• ベストアンサー

Excelで他のブックシートをボタンに登録する方法

Excelで毎年の記録帳を作成し、2006というbookの中にsheetが1月~12月という様に12sheetあります。  同様に2000~2005のbookもあり、 例えば、book2006の11月のsheetを開いていて、2005のbookが見たい時に2006のsheetにボタンを置き、2005のbookが開く様に登録するやり方を教えて下さい。 sheet内でのボタンの登録の仕方はマクロの本にのっていましたが、他のbookを登録するやり方が分からないので・・・  お手数ですが、詳しく書いて頂けると助かります。

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

  • ベストアンサー
回答No.1

VBAでよければ下記URL2つの方法で既存のBookを開く事ができます。 http://www.happy2-island.com/excelsmile/smile03/capter00301.shtml http://www.officetanaka.net/excel/vba/file/file02.htm

s-k-pooh
質問者

お礼

回答、ありがとうございます。 早速、上記ページを参考にやってみようと思います。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • excelでマクロシートをコピーしたとき

    excelでbook1のsheet1のセルA1に「1」を入力→プリントアウト→A1に「11」を入力→プリントアウト・・・以下「31」まで繰り返し。 というマクロが組んであります。 (ボタンにマクロが登録されています。) このシートをbook2にコピーをしたときに マクロを実行する(ボタンを押す)とbook1が開いてしまいます。 これをbook1を開かずにbook2でマクロを実行するには どのようにしたらよいでしょうか。 book2でマクロを作成し直して さらにボタンにマクロを登録していますが、 bookの数が多いのでけっこうな手間になります。 簡単な方法があれば教えて下さい。

  • Excelのシート移動

    初めまして。エクセル超初心者です。  早速ですが、ここにBook1とBook2の二つのブックがあるとします。Book1で現在参照しているSheetをBook2の例えばSheet2の前に移動、というマクロ(VBA?)を作成し、ボタン一つで移動するようにしたいのですが、どの様にすればよいのでしょうか。お教えください。

  • VBAで別のExcelブックのボタンのマクロ登録

    Excelブック1とExcelブック2があります。 Excelブック1はVBAで 1)Excelブック2を開いて 2)Excelブック1のワークシート(Sheet1)と  モジュールシート(Module1)を  Excelブック2にコピーします。 3)ワークシート(Sheet1)にはコントロール(ボタン)が貼り付けてあって  このボタンをクリックするとモジュールシート(Module1)の中の  Excute_Button()というプロシージャ(マクロ)を呼び出すため  Excelブック1のVBAで  wb.Worksheets("Sheet1").Shapes.Range(Array("Button 1")).Select  Selection.OnAction = "Excute_Button"  と記述してボタンのマクロの登録をします。   (wbはExcelブック2を指しています) 4)Excelブック2を保存して閉じる。 という処理をしています。 この後、Excelブック1を閉じて、 Excelブック2を開いてワークシート(Sheet1)のボタンをクリックすると Excelブック1が開いてしまいます。 Excelブック2のボタンのマクロの登録のマクロ名を見てみると Excelブック1のファイル名!Excute_Button となっています。 Excelブック1のVBAで、ここを単にExcute_Buttonだけにするには どのようにすればよいでしょうか。

  • Excel VBAで他のブックを選択する方法を教えてください。

    こんにちは。VBA初心者です。 ブックを2つ開いた状態で、 マクロを保存してあるブック〔Book1〕から、 毎回ブック名が異なる[Book2]の選択されている2枚のシートを新しいブックに(仮Book3)コピーしたいのですが、どのように記述したらよいのでしょうか。(選択されるシートも毎回異なります。) 特に教えていただきたい部分は、 1.マクロが記録されているBOOK1以外のBookを操作する方法。 2.私以外の方が利用する為、Book1に保存したマクロから実行させる予定なのですが、Book1を毎回開いて実行させる方法がベストのやり方なのでしょうか。 マクロの記録では下記の感じになります。 Sub Macro4() Windows.Arrange ArrangeStyle:=xlVertical Windows("Book2.xls").Activate Sheets(Array("Sheet3", "Sheet4")).Select Sheets("Sheet4").Activate Sheets(Array("Sheet3", "Sheet4")).Copy End Sub 宜しくお願い致します。

  • 他のブックからシートをコピーする

    ExcelVBA勉強中の者です。 他のブックのsheet1をコピーし、使用中のブックのsheet1にペーストする事を目的に ネットの情報を参考に以下のコードを作成しました。 Sub test() Dim book1 As Workbook '変数book1をワークブック型で宣言 Dim book2 As Workbook '変数book2をワークブック型で宣言 Set book1 = Application.ActiveWorkbook 'アクティブになっているブックをbook1へセット Application.ScreenUpdating = False '画面の更新を止める '↓アドレスのブックを開く事までbook2にセット(ReadOnly:=Trueで読み込み専用) Set book2 = Application.Workbooks.Open("C:\Documents and Settings\AAA\デスクトップ\他のブック.xls", ReadOnly:=True) book2.Sheets("Sheet1").Copy after:=book1.Worksheets("sheet1") Set book1 = Nothing '変数book1を開放 book2.Close SaveChanges:=False 'book2を閉じる(SaveChanges:=Falseで保存せずに終了) Application.ScreenUpdating = True '画面の更新を再開する Set book2 = Nothing '変数book2を開放 End Sub 動作としては上手くいったのですが、 book2.Sheets("Sheet1").Copy after:=book1.Worksheets("sheet1") の部分でペースト先を変数book1のsheet1と指定しているにも関わらず sheet1(2)という新しいシートが作成され、そちらへペーストしてしまいます。 思うに「コピーしたシートを挿入する」という動作であると思われますが、 これをペーストするという表記が出来ず困っております。 お手数お掛けしますがどなたかご助力お願い致します。 *Excelのバージョンは2002を使用しております。

  • エクセル-別のbookで同様のマクロ実行

    エクセル-別のbookで同様のマクロ実行 最初あるBook1に入っているmacro1はそのbook1のsheet1を処理するように作成しました。 次にBook1を開いたまま、Book2を開きそのsheet1に対してmacro1と同等の機能を実行したい場合は通常どうするのでしょうか。 (1) Book2にBook1のマクロをコピー (2) book2のマクロを開き、表示されるBOOK1 macro1を実行する。 (2) 場合でもうまくいくのでしょうか。Sheet1に対してやりたいことの論理は同じとします。試してみたらといわれそうですが、まず識者の説明をお聞きしたいのです。

  • Excel 違うBookのシートをコピーする

    Excelでわからないことがあり質問させていただきました。 原紙のBookに 資料のBookのシートをコピーさせたいのですが 資料Bookには シートが sheet1~sheet50まであり 原紙のBookにマクロのボタンやフォームを作成し 毎回資料のBookの違うシート名を選択しコピーをさせることは可能なのでしょうか? たとえば 原紙のシートに入力フォームを作り sheet名を入力 → 「コピー」のボタンを押すとコピーができる。 といった感じに・・・ フォームでなくてもリストなんかでもいいのですが・・・

  • VBAで他のブックのシートにボタン一つで書込みたい

    現在申し込み票のExcelがあるのですが、マクロをボタンに登録してボタン一つ押すと申し込み票の名前と生年月日、住所が他のExcelのブック(例えば申込者名簿.xls)のシートに、名前→A1、生年月日→B1、住所→C1に入力されて保存されるようにしたいです。 更に次にもう一度ボタンを押した時には、名前→A2、生年月日→B2、住所→C2・・と言うようにどんどん書き足したいです。 書き足した後は元のExcelブックも申込者名簿.xlsも閉じるようにしたいです。 どのようにVBAを書けばよいのでしょうか? まだVBA初心者のためいまひとつわかりません。 よろしくお願いいたします。

  • エクセルのシート保護をマクロのボタンで

    ご教示下さい。 エクセルでのシート保護の設定をボタン一つで出来るようにと思い、マクロの自動記録で作成してみましたが、設定したはずのパスワードが記録されていません。 シート保護の解除にパスワードの入力が必要なようにする、シート保護のマクロは出来るでしょうか?。 どなたか、よろしくお願いいたします。

  • 2007エクセル マクロボタンのリボン挿入方法

    職場のエクセルが2007に新しくなり、マクロボタンのタブ又はリボンへの挿入方法がわかりません。 今まで2002を使って、自動記録マクロで作成した簡単なマクロを PERSONALシートに保存しボタンを作成して常時使っていましたが、 2007になって、タブ又はリボンの位置に作成する、マクロの登録ボタンの作成方法がわかりません。 どなたかご教示ください。 よろしくお願いいたします。