【VBA】ブックのフルパスを変更する(ファイル名の変更も含む)|Name
作成日:2022-12-02
更新日:2025-10-04

ブックのフルパスを変更する
ファイル名のみの変更の場合もフルパスで指定
' Rename or move a workbook file safely|ブックファイルを安全にリネームまたは移動する
Public Sub ChangeBookPath( _
ByVal srcPath As String, _
ByVal dstPath As String)
' 元ファイルが存在しなければExit
If Dir(srcPath) = "" Then Exit Sub
' 既に移動先が存在すればExit
If Dir(dstPath) <> "" Then Exit Sub
' 実際にリネーム/移動
Name srcPath As dstPath
End SubsrcPathにあるファイルをdstPathに変更する- 例:
C:\Data\Book1.xlsx→C:\Archive\Book1_2025.xlsx
Name ステートメントとは|Name Statement
- Renames or moves a file | ファイルをリネームまたは移動する
- 書式:
Name oldpathname As newpathname srcPathとdstPathにフルパスを与えれば、フォルダをまたいだ移動も可能
Name は VBA標準のファイルリネーム/移動機能- フルパス指定すれば、名前変更だけでなくフォルダ移動も可能。
- 注意点:対象ファイルが開いているとエラーになる。
制約と注意点
- 開いているファイルはNG
- Excelで対象ブックが開いている場合、
Nameは実行できずエラーになる
- Excelで対象ブックが開いている場合、
- ファイル存在チェック推奨
Dir(srcPath)で事前に存在確認すると安全
- 上書き不可
- 既に
dstPathが存在する場合、エラーになる
- 既に
Referenced Insights & Citations
- Microsoft Docs: “Name Statement”
| Name Statement|Nameステートメント |
| File Rename|ファイルリネーム |
| File Move|ファイル移動 |
| Existence Check|存在チェック |
| Runtime Error|実行時エラー |
Always check file existence
before renaming
to prevent runtime errors.
before renaming
to prevent runtime errors.
2022-12-02
編集後記:
この記事の内容がベストではないかもしれません。
記事一覧
-

dictionaryをセットする 【VBA】Dictionaryのセット|CreateObject(“Scripting.Dictionary”) -

[VBA]Trimwhitespace 【VBA】先頭,末尾,両端の空白を削除する|Trim -

[VBA]Paste 2D Arrayresize once 【VBA】二次元配列をシートに貼り付け【範囲をリサイズする】 -

[VBA]Run PowerShellfrom VBA 【VBA】指定場所にあるPowerShellスクリプトを実行する -

グラフ設定を変更する 【VBA】グラフ設定を動的に変更する -

テーブルを初期化 【VBA】Excelテーブルを初期化する