- 締切済み
エクセルでファイル名を変更したい
フォルダ"果物"に次のファイルがあります。 りんご.xls バナナ.xls みかん.doc なし.xls START.xls START.xlsを開きセルA1に"自分の"と入力して、各ファイル名を次のように変更したいのですが、宜しくお願いします。 自分のりんご.xls 自分のバナナ.xls 自分のみかん.doc 自分のなし.xls
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- ham_kamo
- ベストアンサー率55% (659/1197)
「ファイルが見つかりません」ですか…。マクロの中でフォルダ内のファイル一覧を取得して、それをそのままリネームしているのですが。 エラーの原因が特定できないので、とりあえずファイル名をフルパスにするように書き換えてみました。 以下のマクロに置きかえて試していただけますか? Sub Macro1() Dim FileName As String Dim Folder As String Folder = ActiveWorkbook.Path & "\" FileName = Dir(Folder & "*.*") Do While FileName <> "" If FileName <> ActiveWorkbook.Name Then Name Folder & FileName As Folder & ActiveSheet.Range("A1").Value & FileName End If FileName = Dir() Loop End Sub
- ham_kamo
- ベストアンサー率55% (659/1197)
再びNo.1です。 Excelのヘルプによると、 「現在、開いているファイルに対して Name ステートメントを実行すると、エラーが発生します。ファイル名を変える前に、開いているファイルを閉じてください。」 とのことなので、もし他のファイルを開いている状態でしたら、全部閉じてからマクロを実行してみてください。
お礼
たびたび申し訳ございません。 エラー55 ファイルが見つかりません。とエラー出で止まってしまいます。START.xlsは開いています。宜しくお願いします。
- ham_kamo
- ベストアンサー率55% (659/1197)
No.1です。 うまくいきませんでしたか、すみません。私の環境ではうまくいったのですが…。 マクロを実行したときにエラーメッセージが出ると思うのですが、何と出るか、補足していただけますか?
- ham_kamo
- ベストアンサー率55% (659/1197)
これは、START.xlsと同じフォルダにある全てのファイル(START.xls以外)を、A1のセルに入っている文字列を先頭につけてファイル名を変更する、ということでよろしいでしょうか。 START.xlsを開き、Alt+F11でVBAの画面を開いて「挿入」>「標準モジュール」を選択します。 出てきた右の画面に以下のマクロを貼り付けます。 Sub Macro1() Dim FileName As String FileName = Dir("*.*") Do While FileName <> "" If FileName <> ActiveWorkbook.Name Then Name FileName As ActiveSheet.Range("A1").Value & FileName End If FileName = Dir() Loop End Sub Alt+F11でExcelの画面に戻るので、Alt+F8からマクロを実行してください。
お礼
ham_kamoさん回答ありがとうございます。 マクロを実行したところ5行目の Name FileName As ActiveSheet.Range("A1").Value & FileName ところでデバッグしてしまいます。もう少しご教授してください。 宜しくお願いします。
お礼
すごい上手くいきました。 ham_kamoさん本当にありがとうございます。 また、解らないことが有った時宜しくお願いします。