こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

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

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

全てのシートを選択状態にして、印刷をするvbaをしたいのですが、
シートが増えても使えるvbaコードはありますか?

投稿日時 - 2013-05-09 22:47:12

QNo.8080656

困ってます

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

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

Array(アレー)

投稿日時 - 2013-05-15 13:06:46

お礼

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

投稿日時 - 2013-05-16 22:37:25

ANo.4

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(4)

ANo.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

投稿日時 - 2013-05-10 09:12:26

お礼

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

投稿日時 - 2013-05-16 22:37:23

ANo.2

確認できない環境に、今いるのでご容赦を、

ウオッチでアレーしている全体を見ると、
どうなってます?

それと同じものって作れそうですか?

投稿日時 - 2013-05-10 00:40:35

お礼

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

投稿日時 - 2013-05-13 21:57:49

ANo.1

>全てのシートを選択状態にして、印刷

sub macro1()
activeworkbook.printout
end sub
でいいです。

投稿日時 - 2013-05-09 22:55:25

お礼

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

投稿日時 - 2013-05-13 21:57:38

あなたにオススメの質問