Excel VBAをこれから始めてみようとしている超初心者です。
手始めとして、以下の処理をさせてやろうかと思っていたのですが
いきなり挫折しまいました。。
◎Sheet1から順番に最終シートまでを連続印刷。
◎最終シートまで印刷されたら処理終了で、Sheet1を表示させる。
・データによってシート数は変動する。最終がSheet50の時もあれば
Sheet300の時もあり。
・シート名は「Sheet」+半角数字で、連続している。
シート名を変数にして、1ずつ加えていって…と考えながら、色々と
繰り返し処理についてもネットで調べてみたのですが、結局頭の中で
行き詰ってしまいました。
非常に簡単な処理だとは思うのですが、どのような書き方があるのか
ご教示頂ければ助かります。
宜しくお願いします。
No.2ベストアンサー
- 回答日時:
> 例えばシートの並びが、「資料1」「資料2」「sheet1」~
「sheet50」とある場合で、「資料1」「資料2」を飛ばして印刷せず
「sheet1」から始まって残りを全て印刷というパターン
資料という文字が入っていないシートを全て印刷するならこんな感じかな。
Sub test02()
For Each sh In Worksheets
sh.Activate
If Not ActiveSheet.Name Like "*資料*" Then
ActiveSheet.PrintOut
End If
Next
Worksheets(1).Activate
End Sub
No.3
- 回答日時:
もう既に模範解答が出ていますので蛇足ですが、
WorkBook.Sheets.CountでWorkbookの総シート数を取得することができます。ご参考までに。
For i=1 to WorkBook.Sheets.Count
Worksheets(i).Activate
ActiveSheet.PrintOut
next
Worksheets(1).Activate
WorkBook.Sheets.Countは知りませんでした。
今回使いそうな気がするので、参考にさせて頂きます。
有難うございますm(_ _)m。
No.1
- 回答日時:
Sub test01()
For Each sh In Worksheets
sh.Activate
ActiveSheet.PrintOut
Next
Worksheets(1).Activate
End Sub
この回答への補足
早速のご回答有難うございます。
For Each ~ Next はこう使うのですね。勉強になります。まだこう
いった構文もろくに頭に入っていないもので難儀しております。
少し加工して、何とかエラーも出ず、実行できました。
ついては、ずうずうしくも、もう1点お教え頂けませんでしょうか。
ご回答を頂いた例は、最初から最後まで全シートを印刷するパターン
ですが、例えばシートの並びが、「資料1」「資料2」「sheet1」~
「sheet50」とある場合で、「資料1」「資料2」を飛ばして印刷せず
「sheet1」から始まって残りを全て印刷というパターンでは、上記の
構文で対応できるのでしょうか?
続いてお手間取らせて申し訳ありませんが、宜しくお願いしますm(_ _)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelにて、行の最後のセルの値をコピーして別sheetに張りつけるVBAコードをご教授願います 3 2022/11/20 14:35
- Excel(エクセル) エクセルで”入力シート”の文字書式の変更を”出力シート”で同じ文字書式で印刷したいです。VBA希望 4 2023/04/24 11:07
- Visual Basic(VBA) VBAで不特定枚数印刷をしたいです。 4 2022/08/02 07:30
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Excel(エクセル) Excelであるシートだけ印刷できない 1 2022/04/01 09:04
- Excel(エクセル) エクセルのマクロで複数シートを両面印刷するには? 2 2022/12/08 23:23
- Excel(エクセル) VBAにてエクセルをpdf化する方法 1 2023/03/10 16:20
- Visual Basic(VBA) VBA For Each 〜 複数条件について 3 2022/10/20 20:05
- Excel(エクセル) 【Excel】複数シートがあるエクセルデータで片面印刷と両面印刷設定がシートごとに入 1 2023/03/10 15:25
- スーパー・コンビニ 「コンビニで エクセルをプリントアウト」することができますか? 8 2022/06/16 15:54
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
別のシートから値を取得するとき
-
VBAの天才来てください
-
【ExcelVBA】全シートのセルの...
-
ユーザーフォームに入力したデ...
-
エクセルのマクロでアクティブ...
-
VBA 存在しないシートを選...
-
同じ作業を複数のシートに実行...
-
ExcelのVBAのマクロで他のシー...
-
エクセルのシート名変更で重複...
-
【VBA】シート名に特定文字が入...
-
【VBA】色のついたシート名を取得
-
ExcelVBA:複数の特定のグラフ...
-
ExcelVBA シート名を複数セルか...
-
XL:BeforeDoubleClickが動かない
-
VBAを用いて繰り返し自動的...
-
excelのマクロで該当処理できな...
-
VBA ユーザーフォーム上のチェ...
-
Excel マクロについての相談
-
特定の文字を含むシートだけマ...
-
エクセル・マクロ シートの非...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
別のシートから値を取得するとき
-
ユーザーフォームに入力したデ...
-
Excelマクロのエラーを解決した...
-
excelのマクロで該当処理できな...
-
同じ作業を複数のシートに実行...
-
ExcelVBA シート名を複数セルか...
-
【ExcelVBA】全シートのセルの...
-
Excel マクロについての相談
-
VBA 存在しないシートを選...
-
実行時エラー'1004': WorkSheet...
-
特定の文字を含むシートだけマ...
-
ExcelのVBAのマクロで他のシー...
-
ブック名、シート名を他のモジ...
-
XL:BeforeDoubleClickが動かない
-
VBA 複数の各シートに行を追加...
-
エクセルのシート名変更で重複...
-
【Excel VBA】Worksheets().Act...
-
シートが保護されている状態で...
-
Excel VBA 複数行を数の分だけ...
-
for 文の 繰り返し処理に使える...
おすすめ情報