VBA初心者です。以下のように他サイトを参考にしてプログラムを作成しました。
Sub 作業日報一括印刷()
'
' Macro3 Macro
'
If MsgBox("すべての作業日報が印刷されます。本当に印刷しますか?", vbYesNo, "確認") = vbNo Then
Exit Sub
End If
Range("G1").Select
ActiveCell.FormulaR1C1 = "1"
If Range("s2") = 0 Then MsgBox "印刷対象がありません。"
If Range("s2") = 0 Then Exit Sub
Exit Sub
If Range("s2") > 0 Then
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
End If
Range("G1").Select
ActiveCell.FormulaR1C1 = "2"
If Range("s2") = 0 Then Exit Sub
If Range("s2") > 0 Then
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
End If
・
・~省略~
・
Range("G1").Select
ActiveCell.FormulaR1C1 = "100"
If Range("s2") = 0 Then Exit Sub
If Range("s2") > 0 Then
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
End If
End Sub
上記コードを簡素化できますでしょうか?また途中で停止出来るようにしたいです。
よろしくお願いします。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
提示のコードで正しく作動していますかね??
一応、想像で編集してみました。
Sub 作業日報一括印刷()
For i = 1 To 100
Range("G1").Value = i & ""
’ i & ""はあえて数値も文字列にしていますが、本当は i だけで数値が正解?
If Range("S2") .Value <> 0 Then
SelectedSheets.PrintPreview IgnorePrintAreas:=False
Next
End Sub
G1セルに1から100まで順に入れて
結果を印刷プレビューします。
>途中で停止出来るようにしたいです
なので
PrintOut を PrintPreview
にしてあります。
それと、コードを張り付けるときに
” が " になったりしていますが、大丈夫でしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBA初心者です。 2 2022/10/10 11:52
- JavaScript 画像の表示位置 3 2022/12/23 08:25
- Excel(エクセル) VBAについて 3 2022/06/19 18:19
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) [Excel VBA] このコードでは行の挿入や行の消去をすると13のエラーが出てしまう。 3 2022/12/09 00:29
- Visual Basic(VBA) 動きっぱなしです。止め方とプロシージャの間違いを教えて下さい! 5 2022/08/15 23:08
- Visual Basic(VBA) 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする 3 2022/03/23 15:43
- Visual Basic(VBA) excel VBA if文について 3 2022/03/27 17:42
- Excel(エクセル) 2つのVBAを一緒にしたら機能しなくなりました(エクセル) 7 2022/06/02 12:41
- Visual Basic(VBA) VBA Userformで一部別シートに転記がしたいのですが 2 2023/05/24 13:08
このQ&Aを見た人はこんなQ&Aも見ています
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「.movpkg」「.m3u8」ファイル...
-
グーグルスプレッドシートで他...
-
YahooのIDがロックされてしまい...
-
jtrim 1.53cが正常な動きをし...
-
gimpで文字の細工をしたい
-
GIMP2で背景透過の色判定を設定...
-
ゆうちょ認証アプリが使えません
-
ITの見積もりってなんであんな...
-
アドビの値上げについて
-
クリスタルディスクインフォは...
-
GIMP2で作成した凹み文字を移動...
-
PDFファイルを開きたいので...
-
音楽ファイルをリネームしよう...
-
CMYKのペイントソフトを探して...
-
iTunesを完全にアンインストー...
-
CAE
-
住所もしくは緯度経度で道のり...
-
Bluerayディスクのオーサリング...
-
キャンバで作った自分のポスタ...
-
Premiere Proで書き出し速度を...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセル マクロ 印刷 停止
-
PowerPointの表内のカンマ
-
【VBA】PDF出力に任意のファイ...
-
EXCELでタイトル行と一番下の行...
-
LINEのこの空白ってどんな意味...
-
エクセルの計算式でコンマを付...
-
エクセルでleft関数の結果が表...
-
Excelのテーブル上のセルの保護...
-
名簿の漢字名を関数で半角カナ...
-
Wordの差し込み印刷で空白行が...
-
EXCEL 連動したドロップダウン...
-
エクセルでハイパーリンクのコピー
-
エクセルでセル内改行の1行目...
-
16桁以上の「0」に変換されてし...
-
エクセルで「-3E+06」と...
-
エクセル関数:文字だけでなく...
-
EXCELで縦の行全てに一括して文...
-
【エクセル】入力規則のプルダ...
-
エクセル 印刷範囲外を非表示...
-
エクセルでオートサムを使った...
おすすめ情報