|
ichinose さん、こんにちは。
>>目安箱にいくつもありますよ!!
>>
>>www.vbalab.net/vbaqa/c-board.cgi?cmd=ntr;tree=74;id=FAQ
>>
>>FSOを使ったコードが再帰ロジックの典型コードとして
>>よく使われていますから、再帰処理を学ぶにはよさそうですよ!!
【その1 FSO Version】を見てみました。が、エラーが出ますので、教えていただけないでしょうか。
それまでも何度か別のエラーは出ました。
そこで、参照設定でShell controls and automationと
Scripting runtimeにチェックを入れました。
また、strTargetPath にPathを入れました。
すると、エラー13:型が一致しませんと、下記の場所ででます。
Debug.printしてみたりして自分で確認してみたりもしたのですが、
どうして、型が一致しないのか、よく分からないのです。
何かを私は理解していない気がするのです。
それが何か自分で分からないので、すみません。教えていただけませんか?
よろしくお願いします。
>'呼び出し用
>Sub CallFilePathList1()
> Dim objFSO As FileSystemObject
> Dim strTargetPath As String '対象フォルダパス
>
> Set objFSO = New FileSystemObject
strTargetPath = "K:\"
>
> Call EnumFilePathList1(objFSO.GetFolder(strTargetPath)) → ここでエラー
>End Sub
>
>'本体
>Sub EnumFilePathList1(objFolder As Folder)
> Dim objTargetFile As File
> Dim objSubFolder As Folder
>
> 'ファイル名を列挙
> For Each objTargetFile In objFolder.Files
> Debug.Print objTargetFile.Path
> Next objTargetFile
>
> 'サブフォルダを検索
> For Each objSubFolder In objFolder.SubFolders
> Call EnumFilePathList1(objSubFolder)
> Next objSubFolder
>End Sub
|
|