こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

【Excel VBA】ファイル名の指定

Excel2003を使用しています。

C:\Book1 をコピーして貼り付ける場所を A: にするときに、貼り付け先のBook名を変更したく、そのBook名はその都度指定したいのですが、例えば、InputBox に入力した名前で貼り付ける等できるでしょうか?

よろしくお願いします。

投稿日時 - 2007-07-19 11:53:17

QNo.3180947

暇なときに回答ください

質問者が選んだベストアンサー

以下で処理できます。

Sub CopyBook()
Dim path As String
path = "C:\"
Dim DestFileName As String
DestFileName = InputBox("コピー先ファイル名を入力すること。", "ファイル名入力")
FileCopy path & "Book1.xls", path & DestFileName
End Sub

※ ただし、Book1.xlsがOPENされている場合は失敗します。
Open中ファイルを対象にするならFileSystemObject オブジェクトのCopyFileメソッドで可能かと。

投稿日時 - 2007-07-19 19:01:25

お礼

おはようございます。
おかげさまで、無事処理できました。
ありがとうございました。

投稿日時 - 2007-07-20 09:52:06

ANo.2

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(3)

ANo.3

#2です。

COPY先は”A:”でしたね。

FileCopy path & "Book1.xls", path & DestFileName
   ↓
FileCopy path & "Book1.xls", "A:\" & DestFileName

としてください。

投稿日時 - 2007-07-19 19:04:38

ANo.1

補足要求です。

VBAは、どのように記述していますか?
または、する予定ですか?

投稿日時 - 2007-07-19 11:55:17

補足

>VBAは、どのように記述していますか?
>または、する予定ですか?

コピー元のBookにはコードを記述できないので、貼り付ける側(A:)にコードを記述するためのBookを別に作り、そのBookを開くことで、マクロを実行するようにしようかと考えています。
個人用マクロブックに保存しようかとも思いましたが、他でこのマクロを使用することはないので…。

投稿日時 - 2007-07-19 13:21:29

あなたにオススメの質問