Excel 2007 以降のバージョンでマクロで作成した表の罫線が印字されない

適用対象: Microsoft Office Excel 2007Excel 2010Excel 2013

現象


Microsoft Office Excel 2007 以降のバージョンでは、マクロで作成した表の罫線が印刷プレビューに表示されず、また印字もされません。

原因


この現象は Excel 2007 以降、印刷イメージを作成時の処理が変更されたことに起因して発生します。

解決方法


手動で罫線を引き直します。

回避策


以下の方法は、現象の発生を緩和する方法となります。

方法 1 : マクロにてセルに罫線を設定する際に、以下のプロパティを使用しないようにします。
  • ThinandShade プロパティ
  • Color プロパティ
  • ColorIndex プロパティ


方法 2 : LineStyle を統一します。

同一箇所の罫線について引き直しを行う際には、元々の罫線の LineStyle と新たに引く罫線の LineStyle を統一します。




状況


マイクロソフトでは、この問題をこの資料の対象製品として記載されているマイクロソフト製品の問題として認識しています。

詳細


問題の再現手順

  1. Excel を起動し、新しいブックを作成します。
  2. セル H10 に 「test」 と入力します。
  3. セル A1 から H10 を選択して、セルの背景を任意の色で塗りつぶします。
  4. [表示] タブをクリックします。
  5. [改ページプレビュー] をクリックします。
  6. セル E1 を選択して、右クリックします。
  7. [改ページの挿入] をクリックします。
  8. C ドライブ直下に "work" という名前のフォルダを作成します。
  9. 手順 8. で作成したフォルダに “Test.xlsx“ という名前でファイルを保存します。
  10. Excel を終了します。
  11. メモ帳を起動します。
  12. メモ帳に次のコードを入力します。
      With CreateObject("Excel.Application")
    .Workbooks.Open "c:\\work\\Test.xlsx"
    .Visible = True
    With .Range("A4:D8")
    .Borders(7).LineStyle = 1
    .Borders(10).LineStyle = 1
    .Borders(11).LineStyle = 1
    End With
    With .Range("E4:H8")
    .Borders(7).LineStyle = -4118
    .Borders(10).LineStyle = 1
    .Borders(11).LineStyle =-4118
    End With
    End With
  13. “BorderTest.vbs“ という名前でファイルを保存します。
  14. メモ帳を終了します。
  15. BorderTest.vbs をダブルクリックします。
  16. 起動した Excel で、印刷プレビューを表示します。


結果


1 ページ目の右端の罫線が表示されません。