Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


3247 / 13644 ツリー ←次へ | 前へ→

【63299】ファイルの名前を一部分だけ変えたいです。 ゆうか 09/10/24(土) 23:06 質問[未読]
【63300】Re:ファイルの名前を一部分だけ変えたいで... かみちゃん 09/10/24(土) 23:16 発言[未読]
【63301】Re:ファイルの名前を一部分だけ変えたいで... ゆうか 09/10/24(土) 23:47 お礼[未読]

【63299】ファイルの名前を一部分だけ変えたいです...
質問  ゆうか  - 09/10/24(土) 23:06 -

引用なし
パスワード
   一つのフォルダの中にCSVファイルがたくさんあり、全部の名前の最後の一文字を消して、新たに文字を付け足したいのです。
今のファイル名の最後には”0”が付きます。この”0”を消して”-1”をつけたいのです。
どなたかVBAに詳しい方、超初心者の私をお助け下さい。

【63300】Re:ファイルの名前を一部分だけ変えたい...
発言  かみちゃん  - 09/10/24(土) 23:16 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>一つのフォルダの中にCSVファイルがたくさんあり、全部の名前の最後の一文字を消して、新たに文字を付け足したいのです。
>今のファイル名の最後には”0”が付きます。この”0”を消して”-1”をつけたいのです。

以下のような感じでできると思います。
ポイントは、Dir関数とNameステートメントです。

Sub Sample()
 Dim strPath As String
 Dim strFileName As String
 
 strPath = ThisWorkbook.Path 'マクロが記述されているブックが保存されているフォルダ
 strFileName = Dir(strPath & "\*.csv")
 Do While strFileName <> ""
  Name strPath & "\" & strFileName As strPath & "\" & Replace(strFileName, "0.csv", "-1.csv")
  strFileName = Dir
 Loop
End Sub

なお、変更後のファイル名がすでに存在しているかはチェックしていませんので、
そのようなファイルがある場合は、エラーになるかもしれません。

【63301】Re:ファイルの名前を一部分だけ変えたい...
お礼  ゆうか  - 09/10/24(土) 23:47 -

引用なし
パスワード
   ありがとうございます。
助かりました。

3247 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free