- ベストアンサー
別のブックから、特定のシートを指定して他のブックを開くには
マクロ初心者です。 A.xlsと、B.xlsという2つのブックがあります。 B.xlsはこの時、閉じた状態です。 Aには1つのシートのみがあって、Bには日毎に追加されていく不特定数のシートがあります。 Aのブックのシート内のセル番地A1に、「aaa」と入力した場合、B内の「aaa」という名前のシート名を指定してB.xlsを開くマクロはどう書いたら良いのでしょうか。 頼りきりの質問になってしまって申しわけございません。 何卒宜しくお願い申し上げます。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
マクロ記録を取ればある程度作れてしまうと思いますが、予め開くシート名を変数に取得しておく方が簡単でしょう。 A1セルに入力シート名が必ずあるならMacro1でよいですが、入力ミスなども想定しておくならMacro2の方がよいと思います。 ブックAとブックBが別フォルダに存在しているなら、4行目のOpenメソッドは "C:\WORK\B.xls" のようにフルパスで記述してください Sub Macro1() Dim wh As String wh = Range("A1").Value Workbooks.Open "B.xls" Worksheets(wh).Activate End Sub Sub Macro2() Dim wh As String wh = Range("A1").Value Workbooks.Open "B.xls" On Error GoTo err0 Worksheets(wh).Activate Exit Sub err0: Worksheets(1).Activate End Sub
その他の回答 (1)
- marbin
- ベストアンサー率27% (636/2290)
ブックを起動後指定のシートを表示、となると思います。 ブック起動、指定のシートを表示はそれぞれマクロの自動記録で ある程度のコードが得られます。
お礼
なるほど。参考になります。有難うございました。
お礼
すばらしいです。 Macro2の方を使わせていただき、思い通りのマクロになりました。 1日がかりで悩んでいた所でしたので、助かりました。 本当に有難うございました!