- ベストアンサー
Excelでマクロシートのコピー方法とbook1の開かずにマクロを実行する方法
kinokoyasan2004の回答
- kinokoyasan2004
- ベストアンサー率59% (16/27)
はじめまして。#1の補足になりますが、 アクティブなシートにするには、 Sheets("Sheet1").xxxとかなっているのを、 ActiveSheet.xxxって感じでなおせばいいと思います。
関連するQ&A
- Book間でのコピー
エクセルで以下の処理を実行するマクロを知りたいのですが。 Book1とBook2が開いています。 Book2のSheet1のA1~A10を、Book2のSheet1のA1~A10にコピーします。 この処理を任意の2つのBook間で実行するためにはどんなマクロになるでしょうか。(Book3とBook5で行ったり、Book25とBook46で行ったり等) アクティブになってないBookからアクティブになっているBookにコピーするようにしたいのですが。 宜しくお願いします。
- ベストアンサー
- オフィス系ソフト
- エクセルマクロ コピー元と貼り付け先を指定してコピー&ペーストを実行するマクロ
単刀直入にやりたいことを述べます。 Cドライブと仮定します。3つのBOOKがあります。 それぞれ ----- BOOK1.xls「○○Sheet」・・・(実行するファイル) A 1 BOOK2.xls「△△Sheet」・・・(コピーするファイル名の指定です) 2 A2:E2・・・(コピーするセル範囲の指定) 3 BOOK3.xls「□□Sheet」・・・(貼り付け先のファイル名の指定です) 4 A5・・・(貼り付け先のセルの指定) ----- BOOK2.xls「△△Sheet」・・・(コピー元ファイル) ABCDE 1 あいうえお 2 かきくけこ 3 ・・・・・ ----- BOOK3.xls「□□Sheet」・・・(貼り付け先のファイル) ABCDE 1 ・・・・・ 2 かきくけこ・・・(貼り付け) 3 ・・・・・ ----- >やりたいこと BOOK1.xls「○○Sheet」のA1のセルの値とA2セルの値を参照し、 その該当BOOKのセル範囲(BOOK2.xls「△△Sheet」のA2:E2)をコピーして、 BOOK1.xls「○○Sheet」のA3のセルの値と、A4セルの値を参照し、 その該当BOOKのセル範囲(BOOK3.xls「□□Sheet」のA5)へペーストする。 別のブックの指定したセルの値を別のブックの指定したセルへ貼り付けるだけなんですが、 以前関数を使って似たような事をしようとしたのですが、うまくいかなかったので、マクロならできるのでしょうか。 よろしくお願いします。(ちなみにエクセル2000又は2003です)
- ベストアンサー
- オフィス系ソフト
- Excel マクロ シートをコピーするには
初心者です。 今、Excelファイルが2つあります。 1つは、Book1で、Sheet1にA列だけ文字列の入った表があります。 セル 文字列 A3 AAA A4 BBB A5 CCC A6 DDD : : のような感じです。 もう1つ、Book2があり、それにはいろいろな単価表のシートが多数入っています。 そのシート名はBook1,Sheet1の表にある文字列と全く同じものもあります。(表にはないシート名のシートもあります) 今、Book1,Sheet1の表にある文字列と同じ名前のシートを Book2からBook1へコピーしたいのです。 Book1の表にある文字列は、必ずしもBook2にあるシート名と同じとはかぎらないので、 IFを使って、この文字列のシートがあればコピーする というふうにしたらよいかと思ったのですが、あまりに初心者のため、 条件文にどう書いたらよいのかで困ってしまいました。 お力添えを宜しくお願いします。
- ベストアンサー
- Visual Basic
- EXCEL VBA シートの名前を指定してコピー
EXCEL VBA 初心者です。 とても困っています。 助けてください。 excel2010を使っています。 今,「原本」というシートがあり,それをマクロを使って同じブック内にコピーしたいと思っています。 コピーして新しく作られたシートの名前は「A1」のセルに入力されている値にしたいです。 コピーされた後のシートにはマクロボタンは削除したいと考えています。 また,コピーした後のアクティブシートは「原本」のシートにしたいのですが これを全部いれたコマンドはどのようになるのでしょうか。 似たような質問だったり,回答があるのですが, どのように組み合わせたらいいのかよく分かりません。 どなたかお助けいただけないでしょうか。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- マクロ(エクセルシートコピー先)に関して
分かりましたら教えてください。 A.xlsのシートBを、新しいブックにコピーし移動するときに、そのブック名が、常にそのシートBのセルC3に入力されている文字の名前にするようにマクロを組みました。(....Filename:Range("C3")としています。) さらにC.xlsのシートDもその新しいブックにコピー移動させるマクロを追加したいのですが、コピー先をどのように指定すればいいのでしょうか。。
- ベストアンサー
- オフィス系ソフト
- エクセル:マクロのコピー
エクセル:マクロのコピー エクセルであるbook AにMACROAが入っています。 book BにMACROAをコピーしてもってきたい。どうすればいいですか。
- ベストアンサー
- オフィス系ソフト
- Excel 違うBookのシートをコピーする
Excelでわからないことがあり質問させていただきました。 原紙のBookに 資料のBookのシートをコピーさせたいのですが 資料Bookには シートが sheet1~sheet50まであり 原紙のBookにマクロのボタンやフォームを作成し 毎回資料のBookの違うシート名を選択しコピーをさせることは可能なのでしょうか? たとえば 原紙のシートに入力フォームを作り sheet名を入力 → 「コピー」のボタンを押すとコピーができる。 といった感じに・・・ フォームでなくてもリストなんかでもいいのですが・・・
- 締切済み
- Excel(エクセル)
- エクセル-別のbookで同様のマクロ実行
エクセル-別のbookで同様のマクロ実行 最初あるBook1に入っているmacro1はそのbook1のsheet1を処理するように作成しました。 次にBook1を開いたまま、Book2を開きそのsheet1に対してmacro1と同等の機能を実行したい場合は通常どうするのでしょうか。 (1) Book2にBook1のマクロをコピー (2) book2のマクロを開き、表示されるBOOK1 macro1を実行する。 (2) 場合でもうまくいくのでしょうか。Sheet1に対してやりたいことの論理は同じとします。試してみたらといわれそうですが、まず識者の説明をお聞きしたいのです。
- ベストアンサー
- オフィス系ソフト
- エクセル:シート1のセルA1が0でなければ任意のマクロを実行したい
エクセルマクロ(VBA)初心者です。よろしくお願いします。 (1)エクセルのsheet1のセルA1の値が”0(ゼロ)”でなければ、そのシート上で任意のマクロを実行し、ゼロであれば実行せずにsheet2へとぶ (2)同じようにsheet2のセルA1がゼロでなければ実効し、ゼロでなければsheet3へとぶ・・・の繰り返し(sheet50まであります。) このようなマクロ(標準モジュール)の書き方を教えてください。 よろしくお願いいたします。
- ベストアンサー
- オフィス系ソフト
- Excelでブックをまたいでシートをコピーした時に、元のブックを参照させない方法
Excelでブックをまたいでシートをコピーした時に、 元のブックを参照しないようにしたいです。 BOOK_AというブックのシートにBOOK_Aのブック内のセルを参照する式が ある場合、そのシートをBOOK_Bというブックにコピーすると、 式の中の参照先のセルを示す部分に自動的に[BOOK_A]が追加されて、 BOOK_Aを参照してしまいます。 ここではBOOK_B内のシートを参照してほしいので、そのままの式で コピーしたいのですが、可能でしょうか? よろしくお願いいたします。
- 締切済み
- その他MS Office製品
お礼
回答ありがとうございました。 これからいろいろ勉強したいと思います。
補足
何度も済みません・・・こんな感じなんですけど、どこを・・・ Range("A1").Select ActiveCell.FormulaR1C1 = "1" ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True Range("A1").Select ActiveCell.FormulaR1C1 = "11" ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True Range("A1").Select ActiveCell.FormulaR1C1 = "21" ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True Range("A1").Select ActiveCell.FormulaR1C1 = "31" ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True Range("A1").Select ActiveCell.FormulaR1C1 = "1"