VBA ファイルをコピーするFileCopyステートメント 名前を変更するNameステートメント

スポンサーリンク
スポンサーリンク

FileCopy【ファイルコピー】ステートメント

ファイルをコピーするには
FileCopy【ファイルコピー】ステートメントを使用します。
コピー後のファイル名や保存先を指定できるので
バックアップの用途などにも利用ができます。

FileCopy【ファイルコピー】ステートメントの書式

FileCopy Source,Destination

設定項目の説明

  • Source【ソース】(必須)
    コピー元のファイル名を指定します。
    パスを含めて指定できます。ファイル名のみ指定した場合は
    カレントフォルダーのファイルが操作対象になります。
  • Destination【デスティネーション】(必須)
    コピー先のファイル名を指定します。
    パスも含めて指定できます。
    コピー元と異なるファイル名を指定すれば別名でファイルをコピーできます。
    コピー元と異なるパスを指定すれば、別のファルダーにコピーできます。
    ファイル名のみ指定した場合は、カレントフォルダーにコピーされます。
    コピー先のフォルダーに同じ名前のファイルが存在する場合は
    上書きされます。

開いているファイルに対してFileCopyステートメントを実行すると
エラーになります。
エラーに対する処理が必要になります。

コード例

Sub ファイルコピー()
Dim ファイル名 As String
ファイル名 = "¥バックアップBook10.xlsx"
On Error GoTo エラー処理
FileCopy Source:=ThisWorkbook.Path & "¥Book10.xlsx" _
, Destination:=ThisWorkbook.Path & ファイル名
MsgBox ファイル名 & "作成しました。"
Exit Sub
エラー処理:
MsgBox "指定のファイルはありませんまたは、開いています。"
End Sub

※同じパスにBook1のコピーをバックアップBooK1.xlsxという名前で
作成するコード例です。
※コピー元のファイルが無い場合や開いている場合はエラーになるので
On Error GoTo(オンエラーゴトウ)ステートメントでエラー処理をします。
※マクロを記述しているファイルのバックアップを作成するコードは
上書き保存でバックアップ用ブックを自動で作成するをご覧ください。

Name【ネーム】ステートメント

ファイル名やフォルダー名を変更するには
Name【ネーム】ステートメントを使用します。
変更後の名前を指定するとき別なパスを指定できるため
ファイルやフォルダーを移動したいときにも使用できます。

Name【ネーム】ステートメントの書式

Name Oldpathname As Newpathname


設定値の説明

  • Oldpathname【オールドパスネーム】(必須)
    変更前のファイル名またはフォルダー名を指定します。
    パスを含めて指定できます。
    ファイル名またはフォルダー名にワイルドカード文字は使用できません。
    ファイル名のみを指定した場合はカレントフォルダーの
    ファイル・フォルダーが操作対象になります。
  • Newpathname【ニューパスネーム】(必須)
    変更後のファイル名またはフォルダー名を指定します。
    パスを含めて指定できます。
    ファイル名のみを指定した場合はカレントフォルダーの
    ファイル・フォルダーが操作対象になります。
    変更前と異なるパスを指定すれば、別のフォルダーに移動できます。
    変更前と異なるパスで変更前と同じファイル名に設定した場合は
    ファイルの移動になります。

コード例

Sub 名前変更()
On Error GoTo エラー処理
Name ThisWorkbook.Path & "¥準備データ¥データ準備.xlsx" _
 As ThisWorkbook.Path & "¥配布用データ¥データ.xlsx"
MsgBox "作成しました。"
Exit Sub
エラー処理:
MsgBox "指定のファイルはありませんまたは、開いています。"
End Sub

コードの解説

マクロが記述されているブックと同じパスにある
準備データフォルダーの中にある「準備データ」ファイルを
同じパスにある配布用フォルダーに「データ」という名前に
変更して移動しています。
準備データフォルダーは他のファイルが無ければ空になります。


以上で
FileCopyステートメントとNameステートメントについての解説を終了します。
ありがとうございました。

スポンサーリンク
スポンサーリンク

フォローする

スポンサーリンク
スポンサーリンク