- ベストアンサー
VBAでファイル名を変更したい
EXCEL2003のVBAでブックを連続して保存をするものを作成したのですが、スキルが足りないため、ファイル名が数字になってしまい、リネームをしたいのですが、出だしからつまずいております。 リネームをしたいブック(ファイル)は一つのフォルダに入っており、 excelのシートには旧ファイル名と新ファイル名の一覧をつくり VBAを実行すると一覧に載っているブック名が変更される というものを作りたいのですが、可能でしょうか。 一覧は 旧ファイル名 新ファイル名 1.xls 1北海道.xls 2.xls 2青森.xls という感じです。 フリーのリネームソフトではなく何とか自力でやりたいと思っております。 お力をお貸しください。 よろしくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こんな感じですかね Sub aaa() Dim ws As Worksheet Dim wb As Workbook Dim ln As Long Dim fn1 As String Dim fn2 As String Set ws = ActiveSheet ln = 1 Do fn1 = ws.Range("A" & ln).Value '読み込みファイル名 fn2 = ws.Range("B" & ln).Value '書き込みファイル名 If Len(fn1) = 0 Then Exit Do '空欄になってたら抜ける If Len(fn2) = 0 Then Exit Do Set wb = Workbooks.Open(fn1) 'ひらく wb.SaveAs fn2 '別名で保存 wb.Close '閉じる ln = ln + 1 Loop End Sub
その他の回答 (1)
- rukuku
- ベストアンサー率42% (401/933)
はじめまして 1回だけの操作なら、VBAを使わなくてもできる方法があります。 A B C ren "1.XLS" "1北海道.xls" ren "2.XLS" "2青森.xls" … と頭に「ren」をつけて一覧を作成します。 ファイル名にスペースがある場合はダブルクォーテーションでくくります。 これをファイルのあるフォルダに 「名称変更.bat」と拡張子を「.bat」で 「テキスト(タブ区切り)」の形式で 保存します。 この.batのファイルを実行するとファイル名の変更ができます。 http://itpro.nikkeibp.co.jp/free/NT/WinKeyWord/20040805/1/ren.shtml
お礼
早速のご回答ありがとうございます。 いろいろな方法があるのですね、 勉強になりました。 ありがとうございました。
お礼
早速のご回答ありがとうございます。 大変勉強になり、解決もいたしました。 ありがとうございました。