- 締切済み
エクセルで連続印刷した範囲を印刷済とわかるように
エクセルで以下のようなプログラムで変数s、eに入力の範囲でシートの連続印刷しております。印刷し終わった後ですが、変数s~eの範囲を赤くして印刷済かどうかをひと目でわかるようにしたいと思います。可能でしょうか。 Sub 範囲を指定して印刷() Dim s As Long Dim e As Long Dim i As Long On Error Resume Next s = InputBox("開始No.を入力して下さい。") If s = 0 Then Exit Sub e = InputBox("終了No.を入力して下さい。") If e = 0 Then Exit Sub For i = s To e Worksheets("A").Range("C1") = i Application.Wait Now + TimeSerial(0, 0, 10) Worksheets("B").PrintOut Next i End Sub
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- keithin
- ベストアンサー率66% (5278/7941)
>変数s~eの範囲を赤くして印刷済かどうかをひと目でわかるようにしたい シートの具体的にどこに「(s~eの)赤くすべき範囲」があるのか不明なので,勝手にC列に印刷済みを明記して赤く塗ってみます。 Sub 範囲を指定して印刷() Dim s As Long Dim e As Long Dim i As Long On Error Resume Next s = InputBox("開始No.を入力して下さい。") If s = 0 Then Exit Sub e = InputBox("終了No.を入力して下さい。") If e = 0 Then Exit Sub For i = s To e with range("C65536").end(xlup).offset(1) .value = i .interior.color = vbred end with Worksheets("A").Range("C1") = i Application.Wait Now + TimeSerial(0, 0, 10) Worksheets("B").PrintOut Next i End Sub ご自分のエクセルに合わせて,自力で適切に応用して下さい。
補足
ありがとうございます。赤くしたい範囲はA列です。 A65536に変更して、試してみました。 当方の説明不足なのですが、「A5」セルから下に向かって 数値(1~100)が入っており、 sとeの変数は、その1~100の範囲で指定します。 連続印刷で1から3を指定した場合、セルの色を変えたいのは 「A5」から「A7」ということになります。 よろしければもう一度ご助力いただければと思います。