指定のフォルダ内のフォルダまたはファイルと、表(A列)を比較し、表とフォルダが存在するときは「有り」、表に有ってフォルダが無いときは「無し」、フォルダがあって表に無いときは、「追加:フォルダ名」と入力したいです。
Sub ファイル名確認() Dim sPath As String Dim buf As String Dim sFlg As String Dim hyou As Range sPath = ThisWorkbook.Path & "\" & "テスト" & "\" For Each hyou In Range("A1:A5") buf = Dir(sPath, vbDirectory) sFlg = "無し" Do While Len(buf) > 0 If hyou = buf Then sFlg = "有り" Exit Do ElseIf buf = hyou <> buf Then sFlg = "追加:" & buf End If buf = Dir() Loop hyou.Offset(, 1).Value = sFlg Next End Sub
上のコードでで条件分岐し、ElseIf buf = hyou <> buf Then で表に無いフォルダが存在した場合に、「追加:存在しないフォルダ」と表の隣に表示されるようにしたいです。
このコードを実行すると、存在するフォルダがbufに反映されて何度も同じものが表示されてしまいます。
buf = hyou <> buf
のコードは「hyouの中にbufは存在しない」と言う意味にはならないのでしょうか?
よろしくお願いします。
指定フォルダ直下のサブフォルダーのみを対象とするということでいいのかな?
(サブフォルダーを再帰的に調べるとなるとちょっと複雑になりそう)
回答1件
あなたの回答
tips
プレビュー