• 締切済み

エクセルのVBAで、異なるブック間でのコピー&ペースト

こんばんは。 エクセルのVBAで、異なるブック間でのコピー&ペーストに関しての質問です。 現在アクティブになっているシートのB4セルをコピーして、 現在開いているシートのブックとは異なる特定の ブック(”Book1")の特定のシート(”Sheet1”)のC5セルに貼り付けたい場合、 ●●●の部分に何と表現すればよいか教えてください。 Range("B4").Copy Destination:=●●● よろしくお願いいたします。

みんなの回答

  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.1

同じインスタンスのExcelで開いているブックなら Range("B4").Copy WorkBooks("Book2".WOrksheets("Sheet1").Range("C5") といった具合で指定しましょう

yoshikijpn
質問者

お礼

ご回答ありがとうございました! 参考になりました!

関連するQ&A

  • エクセル(VBA)のブック間でのコピーペーストについて

    こんにちは。VBA入門レベルのものですが、質問させてください。 ブックAとブックBを開いた状態にし、 ・ブックA⇒VBAを組む&データ貼付け先 ・ブックB⇒データコピー元 ブックBの特定セル(例:D10)からブックAの特定セル(例:E12)にコピー⇒貼付 する方法を探しています。 なお、ブックBは、ブック名とシート名が都度変わるので、「ブックAではない方の開いているエクセルファイルからデータをコピーし、ブックAに貼付ける」の構文にしたいです。 また、コピペの他に数式(イコール)で飛ぶ方式でもかまいません。 この内容でのVBAの記述方法が分かる方、どなたか教えて頂けますでしょうか。 すみませんがよろしくお願いいたします。 ※エクセル2003です。

  • VBAでの結合セルのコピー&ペースト

    こんにちは。 EXCELのVBAでマクロを作成しています。 セルの値のコピー&ペーストを行おうとしているのですが、結合されているセルのペーストのときに、「同じ結合セルが必要です」とエラーになってしまいます。 例えば、A1とA2が結合されたセル+A3をコピー Worksheets(x).Activate Range("A1:A3").Selection Range("A1:A3").Copy 別のシートで、B1とB2が結合されたセル+B3にペースト Worksheets(y).Activate Range("B1:B3").Paste セルの結合を解除すればうまくいきます・・・ セルを結合したままペーストしたいのですが、どうやら間違っているようです(ノ_・。) どなたか教えてください。 よろしくお願いします。

  • VBA コピー&ペースト

    次の作業をVBAでマクロを組みたいのですが、どのような構文にすればよいでしょうか。VBA初心者のため、お知恵を拝借させてください。 [目的] 1.ブックA(コピー先)に設定したハイパーリンク先のブックB(コピー元)へジャンプ 2.ブックBへジャンプ後、特定のセルの値をコピー 3.コピーした値をブックAの特定セルへペースト 4. 1.~3.の作業をリピート 対象は、上の作業が未完(ブックAのペースト先のセルがブランク)のもの [詳細] ・ブックB(リンク先)の保存先はサーバー ・リンク先はブックBの特定のシート ・ブックAで設定したハイパーリンクのセルの値がリンク先のシート名 ・ブックBは複数、リンク先のシートも複数(ハイパーリンクごとにリンク先が異なる) ・ブックBにはマクロが設定、開くたびにマクロ有効無効のメッセージ(Excel2003のため) ・コピペする項目は3つ ・ブックA,Bともに開いた状態で、2.~4.のリピートというマクロでも構いません。 以上ですが、他に情報が必要でしたらお申しつけください。 よろしくお願いいたします。

  • Bookの参照をはずした形式でペーストする方法 エクセル

    以下2つのファイルがあります。 □Book1  Sheet1   A1セル =Sheet2!A1  Sheet2   A1セル 1 □Book2  Sheet1   A1セル =[Book1]Sheet2!A1  Sheet2   A1セル 2 Book2,Sheet1,A1セルは、 Book1,Sheet1,A1セルをコピーペーストした結果です。 この状態では、Book2,Sheet1,A1セルには"1"が表示されます。 Book2,Sheet1,A1セルに"2"を表示するために、 Book1,Sheet1,A1セルのコピーを Book2,Sheet1,A1セルに"=Sheet2!A1"としてペーストで入力したいのですが、 普通にペーストしたときは、上記の結果、 「形式を選択して貼り付け」→「数式」としても同じ結果となってしまいます。 どのようにすれば、Bookの参照をはずした形式でペーストできるのでしょうか。 よろしくお願いします。 Excel2003

  • EXCELでブックを開かず?に値をコピーするには?

    VBAに関する質問です 現在作業中のブック「Book1」のシート「Sheet1」のセル「A1~A10」の値を、開いていない「Book2」のシート「Sheet2」のセル「B1~B10」にコピーし、さらに「B1~B10」の値をソートするということをしています。 現状ではBOOK2を開いてコピーするという方法しか判らないので、そうしているのですが、いちいちBOOK2が立ち上がるのが目障りなので、BOOK2を開かないか非表示のまま作業できないものかと思っております。 何卒よろしくお願いします。

  • エクセル)VBAで他のブックのセル参照

    はじめまして。 エクセルのVBAについて教えてください。 VBAで、 book1のsheet1のセルA1にあるデータを開いていない(アクティブでない)別のbook2のsheet2のセルB1にコピーしたいのですがこんなことってできるのでしょうか? ・・やはり開いていないとダメなんでしょうか? あと、これって"ブック参照"っていうことなんでしょうか?自分がやりたいことが何なのか判らないので上手く調べる事が出来ず難儀しています。 よろしくお願いします。

  • VBA:特定の場所のセルの値をコピーする方法

    VBA初心者です。ActiveになっているSheetの特定のセルをコピーする場合は、 Range("A1:F100").Copy というふうに記述すればいいとおもうのですが、特定のBookの特定のSheetのセルをコピーしたいときにはどのように記述すればよいのでしょうか。

  • WSHによるExcelのセルコピー&ペーストの方法

    【やりたいこと】 WSHを利用して 1.あるExcelファイル(Aとする)を開く 2.別のExcelファイル(Bとする)を開く 3.Aの特定のシートの特定のセル範囲をコピー 4.Bの特定のシートに、3でコピーしたセル範囲をペースト 5.B上書き保存&閉じる 6.A閉じる 【現状】 以下のようなコードを書いてみたのですが、 ファイルの開閉はできますがコピー&ペーストが 全くできていないようです。 何が問題なのかよくわからず質問させていただきました。 かなり素人なので無駄も多いですが、ぜひご教授願います。 よろしくお願い致します。 ------------------------------------- Set xl1 = Wscript.CreateObject("Excel.Application") xl1.Visible = false Set book1 = xl1.WorkBooks.Open(A) Set mysheet1 = book1.worksheets(特定のシート) Set xl2 = Wscript.CreateObject("Excel.Application") xl2.Visible = false Set book2 = xl2.WorkBooks.Open(B) Set mysheet2 = book2.worksheets(特定のシート) mysheet1.Activate xl1.Range("A1").CurrentRegion.Select xl1.Selection.Copy mysheet2.Activate xl2.Range("A1").Select xl2.Selection.Pastespecial 'ファイルクローズ book2.Close false xl2.Quit set mysheet2 = Nothing set book2 = Nothing Set xl2 = Nothing book1.Close false xl1.Quit set mysheet1 = Nothing set book1 = Nothing Set xl1 = Nothing --------------------------------

  • エクセルVBAでコピーすると行の高さが低くなる

    いつもお世話になってます。 エクセル2003のVBAで、セルの範囲を指定してコピーすると行の高さが低くなってしまいます。その他の書式は、変化せずうまくコピーできています。以下がプログラムです。 Sub copy_hyou() Worksheets("sheet1").Activate Range("A1:K24").Copy 'セルA1からK24をコピーします。 Range("A25").Select 'A25からペイストします。 ActiveSheet.Paste End Sub どう直せば、行の高さもコピーできるでしょうか? お休み中すみませんがよろしくお願いいたします。

  • エクセルVBAのコーディング

    現在、次のようなことがやりたくてエクセルのコードを作ってみました。 ・データが書かれたエクセルの複数のsheetの特定のセルをコピーして、sheet1にコピーペーストしていきたい。 そこでこのようなコードを書いてみました。 Private Sub Worksheet_Activate() Sheet4.Select Range("A16").Copy Sheet1.Select Range("U63").Select Sheet1.Paste End Sub とりあえずSheet4のセルA16のデータをSheet1のU63にコピーペーストするようにしてみたのですが、うまくいきません。 この場合のコードの書き方をご教授いただけないでしょうか? どうぞ、よろしくお願い致します。

専門家に質問してみよう