教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について紹介します。

【ExcelVBA 印刷】セルのエラーチェック結果を印刷するかどうかを制御する方法を教えて!

構文

構文は以下の通りです。

Worksheet.PageSetup.PrintErrors = xlPrintErrorsDisplayed / xlPrintErrorsBlank / xlPrintErrorsDash

解説

PrintErrorsプロパティを使用することで、印刷時にセルのエラーチェック結果を表示する方法を制御することができます。デフォルトでは、このプロパティはxlPrintErrorsDisplayedに設定されており、エラーチェック結果が表示されて印刷されます。PrintErrorsプロパティは、次のいずれかの定数を取ります。

定数 内容
xlPrintErrorsDisplayed エラーチェック結果を表示して印刷します。
xlPrintErrorsBlank エラーチェック結果を空白として印刷します。
xlPrintErrorsDash エラーチェック結果をダッシュ(「-」)として印刷します。

使い方

PrintErrorsプロパティをxlPrintErrorsBlankに設定すると、印刷時にセルのエラーチェック結果が空白として印刷されます。例えば、以下のように設定します。

Sub SetPrintErrors()
    Worksheets("Sheet1").PageSetup.PrintErrors = xlPrintErrorsBlank
End Sub

上記の例では、"Sheet1"という名前のワークシートのPrintErrorsプロパティをxlPrintErrorsBlankに設定しています。

プログラミング例

以下のプログラム例では、PrintErrorsプロパティを使用して、ワークシートの印刷時にエラーチェック結果の表示を切り替える方法を示します。

Sub TogglePrintErrors()
    Dim ws As Worksheet
    Set ws = ThisWorkbook.Worksheets("Sheet1")
    If ws.PageSetup.PrintErrors = xlPrintErrorsDisplayed Then
        ws.PageSetup.PrintErrors = xlPrintErrorsBlank
    Else
        ws.PageSetup.PrintErrors = xlPrintErrorsDisplayed
    End If
End Sub

上記の例では、"Sheet1"という名前のワークシートのPrintErrorsプロパティの現在の設定を確認し、xlPrintErrorsDisplayedならxlPrintErrorsプロパティをxlPrintErrorsBlankに設定しています。

まとめ

PageSetup.PrintErrorsプロパティを使用すると、印刷時にセルのエラーチェック結果の表示を制御することができます。この機能を活用することで、印刷物に表示されるエラーチェック結果を調整することができます。是非活用してください。