アプリ版:「スタンプのみでお礼する」機能のリリースについて

はじめまして。
エクセルのVBAについて教えてください。
VBAで、
book1のsheet1のセルA1にあるデータを開いていない(アクティブでない)別のbook2のsheet2のセルB1にコピーしたいのですがこんなことってできるのでしょうか?
・・やはり開いていないとダメなんでしょうか?

あと、これって"ブック参照"っていうことなんでしょうか?自分がやりたいことが何なのか判らないので上手く調べる事が出来ず難儀しています。

よろしくお願いします。

A 回答 (3件)

No.2のものです。


間違ってました。

sub test()

Sheets("sheet1").Select
Range("a1").Copy

Workbooks.Open(Filename:="c:\BOOK2.XLS").RunAutoMacros Which:=xlAutoOpen
Sheets("sheet2").Range("b2").PasteSpecial Paste:=xlValues
Application.CutCopyMode = False

Application.DisplayAlerts = False
ActiveWorkbook.Save
ActiveWorkbook.Close

end sub

でした。
    • good
    • 0
この回答へのお礼

ありがとうございました。
やはりいったん開くことは必要なのですね。
丁寧な対応、感謝いたします。

お礼日時:2003/11/04 16:39

可能ですよ!



Sub test()

Sheets("sheet1").Range("a1").Copy

Workbooks.Open(Filename:="c:\BOOK2.XLS").RunAutoMacros Which:=xlAutoOpen
Windows("BOOK2.XLS").Activate
ActiveWorkbook.Sheets("sheet2").Range("b2").PasteSpecial Paste:=xlValues
Application.CutCopyMode = False
ActiveWorkbook.Saved = True
ActiveWorkbook.Close

End Sub
    • good
    • 0

開いていないブックには書きこめないのでVBAでbook2を開いて書きこむことになります。



参照として書きこみたいならB2セルには
='C:\My Documents\[book1.xls]Sheet1'!$A$1
のような数式を書きこむことになると思います。
    • good
    • 0
この回答へのお礼

ありがとうございます。
やっぱりいったん開くことは必要なのですね。
もしかすると何かウラ技とかあるのでは無いかなと
思ってました。(そんな都合の良いこと無いですよね)

お礼日時:2003/11/04 16:41

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!