VBAでファイルの存在をチェックするVBAを作成しています。
シートのセルA1~A4にファイル名(1,2,3,4)を入力し、フォルダが存在すれば隣のB列に"有り"なければ"無し"と表示されるようにしたいです。
Do While <>""でファイル名すべてを抽出したものを、
If Replace(strFlname, ".", "") <> "" Then
でファイル名のみにし
for で4行分繰り返し、IFの条件式で"有り"と"無し"に分岐しています。
Sub ファイルチェック質問用() Dim Path As String Dim strFlname As String Dim intA As Long Path = ThisWorkbook.Path strFlname = Path & "テスト" & "\" Do While strFlname <> "" For intA = 1 To 4 If Replace(strFlname, ".", "") <> "" Then 'ここで比較 If strFlname = Cells(intA, 1) Then Cells(intA, 2) = "有り" Else Cells(intA, 2) = "無い" End If End If Next Loop End Sub
この式を実行すると、すべて"無し"の表示となり、その後フリーズしてしまいます。
マクロの最後をLoopで終えると無限ループするのでしょうか。
そもそも上記の考えでは目的を達成するのは難しいでしょうか?
すべて"無し"の表示となる理由も知ることが出来ればうれしいです。
よろしくお願いします。
回答2件
あなたの回答
tips
プレビュー