Excelで年賀状印刷ソフトを作ってみよう

Step 14 印刷中止の実行

「中止」ボタンがクリックされると、EndFlag がTrueになります。
Trueになると、ループを途中で抜けます。



Homeへ > Excelでアプリケーションソフト2 > 年賀状印刷ソフト

シート画面

印刷を開始すると、中止ボタンのEnabledプロパティをTrueにしています。
中止ボタンを有効

印刷中止した画面
中止したシート

下記のVBAコードに変更してください。

'印刷開始
Private Sub MyPrintStart()
    Dim ln1 As Long
    Dim ln2 As Long
    Dim rowmax As Long
    Dim i As Long
    
    '名前の最下行の取得
    ln1 = Sheets("住所録").Range("A65536").End(xlUp).Row
    '住所1の最下行の取得
    ln2 = Sheets("住所録").Range("D65536").End(xlUp).Row
    
    If ln2 > ln1 Then
        rowmax = ln2
    Else
        rowmax = ln1
    End If
    
    If rowmax = 11 Then
        MsgBox "宛先の名前、住所が入力されていません。処理を中止します。"
        Exit Sub
    End If
    
    ExPrintReady True
    For i = 12 To rowmax
        'マークの有無
        If Cells(i, lPrintCol) <> "" Then
            If Cells(i, 1) <> "" Or Cells(i, 4) <> "" Then
                Range("D6") = Cells(i, 1)
                Range("D7") = " 印刷中・・"
                '印刷実行
                MyPrintDataSet i
                If TextBox1.Value > 0 Then
                    Range("D7") = "時間待ち中"
                    ExTimer TextBox1.Value
                End If
            End If
        End If
        
        If EndFlag = True Then
            Range("D7") = "中止しました"
            Exit For
        End If
    Next
    ExPrintReady False
End Sub

Homeへ > Excelでアプリケーションソフト2 > 年賀状印刷ソフト

■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します


Copyright (c) Excel-Excel ! All rights reserved