
No.1ベストアンサー
- 回答日時:
>上手くできません。
初心者かベテランかは関係ありません。
うまくいかないなら、うまくいかないそのコードの抜粋でもを公開すると、最適な回答が得られやすくなります。
うまくいかないのには、必ず理由があります。その部分の修正を指摘するだけで、うまくいくようになるはずです。
>コントロールのDirListBoxを使用するか、Dir関数を使用したいのですが、
http://okwave.jp/kotaeru.php3?q=1576659
でファイルリストボックスコントロールについて答えております。
ドライブリストボックスは[Pattern]プロパティの部分だけ行わなければ、そのままListCountで数を取得できます。
名前の取得はどちらも、Pathさえ設定してしまえば、リストボックスと同様にList(Index値)で取得できます。
Dirを利用するのであれば、サンプルを書かないでも、ヘルプに出ています。
履歴とヘルプを活用しましょう。
参考URL
http://okwave.jp/kotaeru.php3?q=1561188
を流用した、別の取得方法です。
Sub Main()
Dim strPath As String
Dim strLog As String
'調査するパス
strPath = "C:\WINDOWS\system32"
'ログ出力先
strLog = "C:\FileList.txt"
'メイン処理でログに結果を出力させる
Call CreateList(strPath, strLog)
'ログを展開する
Call CreateObject("WSCript.Shell").Run(strLog)
End Sub
'-----------------------------------------------
'メイン処理
'-----------------------------------------------
Sub CreateList(ByVal inFolderName As String, ByVal inLogFile As String)
Dim fsoObj As Object
Dim fsoFolder As Object
Dim fsoSubFolder As Object
Dim fsoFile As Object
Dim objText As Object
'オブジェクト生成
Set fsoObj = CreateObject("Scripting.FileSystemObject")
'ログファイル準備
Set objText = fsoObj.OpenTextFile(inLogFile, 2, True, 0)
'フォルダオブジェクト取得
Set fsoFolder = fsoObj.GetFolder(inFolderName)
'//-----------------------ファイル処理---------------------------------
'ファイル数を出力
objText.WriteLine "ファイル数:" & fsoFolder.Files.Count
'フォルダ内/ファイルループ
For Each fsoFile In fsoFolder.Files
'ファイル名をログに出力
objText.WriteLine fsoFile.Path
Next
'//--区切り線
objText.WriteLine String(50, "-")
'//-----------------------サブフォルダ処理-----------------------------
'サブフォルダ数を出力
objText.WriteLine "サブフォルダ数:" & fsoFolder.SubFolders.Count
'フォルダ内/サブフォルダループ
For Each fsoSubFolder In fsoFolder.SubFolders
'ログに出力
objText.WriteLine fsoSubFolder.Path
Next
objText.Close
Set objText = Nothing
Set fsoObj = Nothing
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 集めたシートのシート名を変更したい。 下記のコードでサブフォルダにあるファイルのSheet3を集めて 6 2022/08/23 10:38
- Visual Basic(VBA) サブフォルダ(データ)にある複数の.xlsxファイルのSheet3のA2セルの値で01から左側をB2 2 2022/08/14 15:46
- Visual Basic(VBA) VBA GetAttrについて教えてください 2 2022/12/22 15:25
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2022/10/26 17:14
- Excel(エクセル) フォルダ内のエクセルファイルを開かずにデータ採取する関数式 2 2022/12/22 22:15
- ソフトウェア フォルダ内の全サブフォルダ内のファイルパスをサブフォルダ毎に行を分けてリスト化したい 1 2022/11/13 10:27
- Visual Basic(VBA) エクセルのマクロについて教えてください 物件ごとのフォルダを作成してます そのフォルダ内にサブフォル 2 2023/07/02 17:58
- Visual Basic(VBA) シートをコピーする下記記述でダイアログを用いた記述がわかりません?( A = Dir(ThisWor 4 2022/08/22 12:26
- Visual Basic(VBA) VBA★PDFをPDFアプリで印刷しようと思っていますが上手くゆきません 1 2022/06/06 22:04
- Visual Basic(VBA) Excel VBA ファイル取得について フォルダの中に、ファイル名“会議“を含むファイルが1つまた 9 2022/10/12 01:18
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
accessでクエリをExcelにエクス...
-
CSVファイルの時刻の形式について
-
iTextでPDFを表示させたら日本...
-
エクセルが裏で動いたままなん...
-
AccessのレポートからPDFをペー...
-
C#にてlistView1からXMLファイ...
-
ACCESS2002(or2003)の日付表示...
-
PHPからPythonに移行したい
-
ACCESSのCSV出力に関して
-
エクセルVBAでMHTMLで保存したW...
-
Thunderbird 受信メールからの...
-
クエリをエクセルファイルへの出力
-
エクセルファイルのダウンロード
-
0バイトのテキストファイル
-
ボタン
-
ファイルアップロードについて
-
リソースファイルを認識してく...
-
JSPの代わりにHTMLじゃだめですか?
-
バイナリファイルの区別
-
テキストファイルの一部分を抽...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
accessでクエリをExcelにエクス...
-
CSVファイルの時刻の形式について
-
コマンドプロンプトのテキスト...
-
Thunderbird 受信メールからの...
-
COBOL、項目末尾に空白がある場...
-
Acrobat参照設定
-
AccessのレポートからPDFをペー...
-
VB6.0でExcel,PDF,Word出力方法
-
CSV形式で保存するとファイ...
-
ショートカットで起動した場合...
-
エクセルが裏で動いたままなん...
-
iTextでPDFを表示させたら日本...
-
COBOL FILLER
-
エクセルVBAでMHTMLで保存したW...
-
accessのリポートを、excelに出...
-
ファイナルカットで編集した動...
-
TransferSpreadsheetでフルパス...
-
Net::SMTPだけで添付ファイルつ...
-
WshShellから起動したbat(ftp)...
-
ACCESS2002(or2003)の日付表示...
おすすめ情報