• ベストアンサー

vbaで全てのシートを選択状態にしたい 印刷

マクロの記録で、全てのシートを選択すると、 Sheets(Array("シート1", "シート2")).Select というのが取得できるのですが、 このコードはシート名が増えたり、シート名が変更されると、使えなくなってしまいます。 全てのシートを選択状態にして、印刷をするvbaをしたいのですが、 シートが増えても使えるvbaコードはありますか?

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

  • ベストアンサー
  • Nouble
  • ベストアンサー率18% (330/1783)
回答No.4

VBAのVBEには式の結果を目視できるウオッチ(見るの英単語)機能があります。 これでお示しいただいた Sheets(Array("シート1", "シート2")) がどの様になっているか を、見られては如何でしょうか? Array(アレー)

ivooweaxcc7
質問者

お礼

ありがとうございました。

その他の回答 (3)

回答No.3

シートのカウンタを使って、Selectを繰り返せばシート対応の処理をしながら印刷できる。 ただ、ワークシートとグラフシート(専用)は別物なので、それぞれの処理を分けたい場合は、少しヤッカイに、、、 Option Explicit Sub WatchOver() Dim kk As Long 'ド~ン、とまとめて選択 Sheets.Select 'チマチマ、と選択 'Sheets.count = Worksheets.count + Charts.Count For kk = 1 To Sheets.Count Sheets(kk).Select '~~~ Next End Sub ExcelVBA でのシートを選択する方法をまとめてみました。 《WorkSheetsコレクション, Charts コレクション, Sheets コレクション》 http://www.nurs.or.jp/~ppoy/access/excel/xlA004.html

ivooweaxcc7
質問者

お礼

ありがとうございました。

  • Nouble
  • ベストアンサー率18% (330/1783)
回答No.2

確認できない環境に、今いるのでご容赦を、 ウオッチでアレーしている全体を見ると、 どうなってます? それと同じものって作れそうですか?

ivooweaxcc7
質問者

お礼

「ウオッチでアレー」とはなんでしょうか?

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

>全てのシートを選択状態にして、印刷 sub macro1() activeworkbook.printout end sub でいいです。

ivooweaxcc7
質問者

お礼

それ専用のコードがあったのですね。 助かりました。

関連するQ&A

専門家に質問してみよう