Webサイト(http://bit.ly/1SszVqL)より、以下のサンプルのマクロをコピーして実行しました。ですが、「×ファイル名または番号が不正です。:52」というエラーで、マクロが機能しません。こちらのマクロのおかしいところを教えてください。詳細は下の通りです。
---------------
Sub A()
Dim fp As String
Dim i As Long
Dim fo As String
Dim fn As String
'パスを変数に格納
fp = Range("A1").Value & "\*.*"
On Error GoTo ERR_HANDL
Range("C4").Value = "実行結果"
'5行目から最終行までループ処理を実行
For i = 5 To Cells(Rows.Count, 1).End(xlUp).Row
'現在のファイル名を取得
fo = Cells(i, 1).Value
'新しいファイル名を取得
fn = Cells(i, 2).Value
'新しいファイル名が入力されているときのみ処理を実行
If fn <> "" Then
'正常処理の実行結果を先に入力
Cells(i, 3).Value = _
"○ファイル名を" & _
"「" & fo & "」から" & _
"「" & fn & "」に変更しました。"
'ファイル名を変更
Name fp & fo As fp & fn
End If
Next i
Exit Sub
ERR_HANDL:
Cells(i, 3).Value = _
"×" & Err.Description & ":" & Err.Number
Resume Next
End Sub
---------------
1)EXCELのバージョンは2010、2013、両方で試しましたが同じ症状でした。
2)仕事でフォルダー内にある大量のファイル名を変更するマクロが必要です。
マクロの基本、etc.はともかく、とりあえずこちらのマクロが機能するようにしたいです。
※連番作成ソフトと組み合わせて、このマクロをそのまま利用する予定です。
3)今、MOS-スペシャシストの勉強中です。合格後、エキスパートも受験予定です。なので、具体的な説明が無理でしたら、マクロの勉強(特にファイル名変更)について簡単なヒント、アドバイスでもOKです。
お手数ですが、説明の上手な方、よろしくお願いします。
No.1ベストアンサー
- 回答日時:
ポイント1
マクロの使用説明書通りに使用をしているか
・A1セルに変更したいファイル群の親フォルダのフルパスが記載されているか
・A5セル以降に変更前のファイル名が表示されている通りに記載されているか
・B5セル以降に変更後のファイル名を記載しているか
ポイント2
・A1セルに入力するフルパス名の最後には”¥”をつけない
・A5セル以降に入力するファイル名は、フォルダの内に表示されているとおりに入力されているか。
すなわち「拡張子を表示する」に設定している場合は拡張子を含めたファイル名を入力、そうでなければ、拡張子を省いたファイル名を入力
アドバイスありがとうございます。
拡張子を表示しない状態で使っておりましたが、
表示して動作させてところ機能しました。
順を追った説明、ありがとうございました。
機会があれば、またお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて教えてください。 7 2023/07/04 09:18
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
- Visual Basic(VBA) 【ご教示ください】VBAの記述方法がわかりません。 2 2022/08/12 21:28
- Visual Basic(VBA) 【前回の続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/16 16:44
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/07/03 09:11
- Visual Basic(VBA) 別シートから年齢別の件数をカウントしたいの続き 5 2023/01/24 00:16
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- Visual Basic(VBA) Excelで下記のようにマクロを作ったところ、一回目は実行できたのですが、二回目以降「実行時エラー1 1 2022/03/25 08:08
- Excel(エクセル) VBA フォルダ見える化のコードについて 2 2023/06/19 15:04
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel・Word リサーチ機能を無...
-
エクセルで特定の列が0表示の場...
-
Excel マクロ VBA プロシー...
-
特定のPCだけ動作しないVBAマク...
-
メッセージボックスのOKボタ...
-
EXCELのVBAでRange("A1:C4")を...
-
ExcelのVBA。public変数の値が...
-
一つのTeratermのマクロで複数...
-
マクロの連続実行
-
TERA TERMを隠す方法
-
Excel VBAからAccessマクロを実...
-
ピボットテーブルでの毎回可変...
-
VBAのIF分で時間指定の条件式の...
-
OnTimeを使ったのですが「エラ...
-
エクセルでキーリストからデー...
-
TeraTermマクロの文字列結合
-
エクセルに張り付けた写真のフ...
-
ExcelVBAでPDFを閉じるソース
-
VBA初心者 Ctrl+での操作、ボタ...
-
EXCELのマクロの重複起動...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel・Word リサーチ機能を無...
-
特定のPCだけ動作しないVBAマク...
-
エクセルで特定の列が0表示の場...
-
Excel マクロ VBA プロシー...
-
メッセージボックスのOKボタ...
-
一つのTeratermのマクロで複数...
-
ExcelのVBA。public変数の値が...
-
エクセルに張り付けた写真のフ...
-
他人が作ったマクロの理解
-
ExcelVBAでPDFを閉じるソース
-
TERA TERMを隠す方法
-
エクセルで別のセルにあるふり...
-
マクロ実行時、ユーザーフォー...
-
Excel VBAからAccessマクロを実...
-
EXCELのVBAでRange("A1:C4")を...
-
TeraTermマクロの文字列結合
-
PDF出力マクロについて。マクロ...
-
#defineの定数を文字列として読...
-
エクセルのマクロをセルの値に...
-
wordを起動した際に特定のペー...
おすすめ情報