• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセル マクロ 任意のファイルを選択してコピペ)

エクセルマクロで任意のファイルを選択してデータをコピーする方法

このQ&Aのポイント
  • エクセルマクロを使用して、任意のファイルを選択し、指定範囲のデータをコピーする方法について教えてください。
  • 現在、エクセルマクロを使用して「A+日付」と「B」の2つのファイルのデータを連携していますが、特定の日付を削除して「A」にファイル名を変更してから処理しています。
  • ダイアログでファイルを選択する方法は分かるのですが、指定範囲のデータをコピーする指示の仕方が分かりません。どなたか教えていただけますか?

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.2

ごめんなさい、思いっきりデタラメを書きました。 訂正: workbooks.open filename:=myfile 失礼しました。

dilemma03
質問者

お礼

早々にご回答いただきありがとうございます。 時間が取れないためまだ確認できていませんが、勉強させて頂きます。

dilemma03
質問者

補足

ようやく時間が取れたのでトライしてみました。 希望した通りの動作が出来ました。 ありがとうございます。

その他の回答 (1)

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

>ダイアログでファイルを開くだけなら、ネットでも探せました ブックが開けたら、あとはコピーするだけです。所定のシートの、所定のセル範囲をキチンと指定して。 sub macro1()  dim myFile as string  myfile = application.getopenfilename()  if myfile = "False" then exit sub  workbooks(myfile).open  activeworkbook.worksheets("シート名など").range("セル範囲").copy _   destination:=thisworkbook.worksheets("シート名").range("A1")  activeworkbook.close false end sub コピー元となるシート名を指定できない場合は、具体的に「どのシートからコピーしたいのか」事実に即してマクロに組み込む必要があります。たとえば「1枚目のシート」などのように。 同様に「どのセル範囲をコピーしたいのか」も、ご相談ではナイショのままですが、適切に指定する必要がありますね。

関連するQ&A