エクセルVBAでシート毎に同じ動作をしたいのです。
例えば
A・B・C・D・E
とシートがあるのですが、A以外のものを全部印刷したいのです。
今までは
Worksheets("B").Select
Range("A1:AG44").Select
Selection.PrintOut From:=1, To:=1, Copies:=1, Collate:=True
Worksheets("C").Select
Range("A1:AG44").Select
Selection.PrintOut From:=1, To:=1, Copies:=1, Collate:=True
と これを繰り返していたのです。
これをやると文章も長くなりますし、シート名が変わったときには、VBAもすべて書き直しと言う状況になってしまいます。
何か打開策はありますでしょうか?
よろしくお願いいたします。
No.1
- 回答日時:
でしたら、サブルーチン、関数を定義します。
' メインの処理
Sub Print_All()
Call Print_1sheet("B")
Call Print_1sheet("C")
Call Print_1sheet("D")
Call Print_1sheet("E")
End Sub
' サブの処理
Function Print_1Sheet(strSheet as String)
Worksheets(strSheet).Select
Range("A1:AG44").Select
Selection.PrintOut From:=1, To:=1, Copies:=1, Collate:=True
End Function
--
シート数が100になると、修正前の方法では400行、修正後は100行と少しです。
シート名が変わっても、メインの処理を書き直すだけで済みます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelでnullになるような式のセルをマクロで空白行と認識させるにはどうすればいいですか? 3 2023/03/13 13:42
- Excel(エクセル) 【マクロ】プリントスクリーンした画像をエクセルに貼付して印刷したい 6 2022/11/30 20:11
- Visual Basic(VBA) エクセル VBA 処理スピードを上げたいのですが。 6 2023/03/31 20:52
- Visual Basic(VBA) DisplayAlertsブロパティで ”実行時エラー424オブジェクトが必要です” 5 2022/05/15 18:02
- Excel(エクセル) 【マクロ】webアドレスにて指定されたCSVファイル【excelソフト表示】を印刷する件 1 2023/02/15 01:52
- Excel(エクセル) エクセルのマクロでコピー後の貼り付け先を毎回指定したところにしたい 5 2022/08/12 10:47
- Visual Basic(VBA) 動きっぱなしです。止め方とプロシージャの間違いを教えて下さい! 5 2022/08/15 23:08
- Visual Basic(VBA) EXCELのVBAについて 2 2023/07/05 17:17
- Excel(エクセル) エクセルVBAでチェックボックスにチェックを入れる 1 2022/09/14 00:52
- Excel(エクセル) vbaで列幅について 1 2022/11/15 08:31
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで複数のシートに画像...
-
EXCELで複数のシートを一度に「...
-
エクセルのシー名を二段表示に...
-
エクセルでブック内の倍率がバ...
-
エクセルのシート連番の振り直し
-
エクセルの2つのシートを並び...
-
ワークシートそのものの色を変...
-
ハイパーリンクでジャンプした...
-
指定したシート名以外を非表示...
-
【ExcelVBA】マクロの入ったシ...
-
エクセルの複数シートでのリン...
-
【Excel VBA】データ貼り付け先...
-
アクセスからエクセルのシート...
-
(エクセル)Indirect関数で、ハ...
-
Wordで差し込み印刷時に表示す...
-
特定のシートのみ再計算させな...
-
エクセルを開くとメニューバー...
-
EXCELの「シートの見出し」のフ...
-
DATE関数 4月31日などのあ...
-
ファイルを開くと必ず一番最初...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXCELで複数のシートを一度に「...
-
エクセルで複数のシートに画像...
-
特定のシートのみ再計算させな...
-
エクセルでブック内の倍率がバ...
-
ワークシートそのものの色を変...
-
【ExcelVBA】マクロの入ったシ...
-
エクセルの2つのシートを並び...
-
EXCELの図形(テキストボックス)...
-
ハイパーリンクでジャンプした...
-
エクセルのシート連番の振り直し
-
特定の複数のシートに同じ処理...
-
エクセルのシー名を二段表示に...
-
Wordで差し込み印刷時に表示す...
-
エクセルで、シートの名前を変...
-
エクセルでリンク貼り付けした...
-
エクセル、特定のシートにパス...
-
accessへエクセルの複数のシー...
-
Accessのテーブルを既存のExcel...
-
【Excel VBA】データ貼り付け先...
-
EXCELの「シートの見出し」のフ...
おすすめ情報