- ベストアンサー
ExcelVBA システム属性のフォルダ
システム属性のフォルダをDirで探し出したいのですが どのように書けばよろしいでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
Sub dirSystem() Const myPath As String = "c:\windows\" Dim fileN As String fileN = Dir(myPath, 31) Do Until fileN = "" If GetAttr(myPath & fileN) And vbSystem Then If GetAttr(myPath & fileN) And vbDirectory Then MsgBox (fileN) End If fileN = Dir(, 31) Loop End Sub でいかがでしょうか。
その他の回答 (1)
- KenKen_SP
- ベストアンサー率62% (785/1258)
Dir で取得した Path を GetAttr 関数で System 属性であるか調べれば 良いはずなのですが、上手くいきませんね... If GetAttr(Path) And vbSystem Then ~ End If FileSystemObject を使えばもっと簡単なのですけど、これではダメ? Sub SampleProc() Dim fso As Object ' // FileSystemObject Dim f As Object ' // Folder Set fso = CreateObject("Scripting.FileSystemObject") For Each f In fso.GetFolder("C:\").SubFolders If (f.Attributes And vbSystem) Then Debug.Print f End If Next Set fso = Nothing End Sub
お礼
FileSystemObjectを使う手もあったんですね! 今度試してみます! 回答ありがとうございました!
お礼
属性を複数指定すればよかったんですね! おかげ様で解決しました 回答ありがとうございました!