- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:フォルダ内のファイル名の末尾7文字を一括置換)
フォルダ内のファイル名を一括置換する方法
このQ&Aのポイント
- VBAを使用して、フォルダ内のファイル名の末尾の7文字を一括置換する方法について解説します。
- 指定したフォルダ内にある特定のファイル名の一部を一括で置換するには、Dir関数を使用してファイル名を取得し、Nameステートメントを使用して置換します。
- 実行時エラーが発生している場合、ファイル名が見つからない可能性があるため、ファイルの存在を確認してください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
こんばんは。 ディレクトリとファイル名を区切る「\」が抜け落ちています。 それから言ってることとコードが正しく対応していません。 これで当方では動きました。 いきなりリネームするのではなく、「Debug.Print」などを入れて正しく ファイルをとらえているかどうか、確認するとよいです。 (イミディエイト・ウィンドウに出力されます) Sub ファイル名置換() Dim fileName As String fileName = Dir("D:\test\*_ip.txt") Do Until fileName = "" ' Debug.Print fileName Name "D:\test\" & fileName As "D:\test\" & Left(fileName, Len(fileName) - 7) & "_en.txt" fileName = Dir() Loop End Sub
お礼
早速のご回答ありがとうございます! おっしゃるとおり D:\test の後の \ が抜けていたのが原因でした。 VBAの勉強を始めたばかりなので、うっかりミスなのか、構文に問題があるのか、自分ではなかなか判断がつきません。。。 質問の内容とコードが一致していないのは、「教えて」用にコードを書きなおしたときに間違えてしまいました。 質問するときは、そういうところも気を付けないとマズイですよね。 今後は気をつけます。