Excel で各ページの周囲に罫線を印刷するにはどうすればよいですか?
数百ページにも及ぶ大規模なワークシートを扱う際には、データを明確かつプロフェッショナルな形式で印刷することが極めて重要です。その実現に有効な方法の一つが、各印刷ページの周囲に罫線を追加し、印刷物を視覚的に区切って読みやすくすることです。Excel では、各ページの内容に対して手動で罫線を選択・適用することも可能ですが、複数ページにわたる場合、この作業は非常に時間がかかり、現実的ではありません。幸いなことに、Excel には全ページの周囲に自動的に罫線を印刷するための、より効率的なソリューションが用意されています。本記事では、組み込み機能や代替手法を含め、このタスクを確実にこなすための実用的な方法をいくつかご紹介します。
➤ グリッド線の設定で各ページの周囲に罫線を印刷する
➤ Kutools for Excel でワンクリックで各ページの周囲に罫線を印刷
➤ VBA マクロによる自動化で各ページの周囲に罫線を印刷
グリッド線の設定で各ページの周囲に罫線を印刷する
Excel には各印刷ページの周囲に罫線を追加する専用オプションはありませんが、印刷グリッド線機能を使えば、ページ罫線を手軽に再現できます。この方法なら素早く設定でき、アドインも不要です。ただし、太いページアウトラインが自動で作成されるわけではなく、Excel はすべてのグリッド線を印刷するため、ページの端は最後に印刷されたグリッド線によって視覚的に定義されることにご注意ください。
注意事項:
- この方法は、ワークシートが規則正しいグリッドレイアウトに従っており、太めのカスタム罫線に依存していない場合に最も効果的です。
- すでにシート内でテーブルに特徴的な罫線を使用している場合、印刷時のグリッド線が視覚的に干渉するおそれがあります。
1。カスタム罫線が設定されている場合は、印刷時に重複や不整合が発生しないよう、事前に削除してください。シートを選択し、ホーム>罫線(アイコン)>罫線なしをクリックして、選択セルの罫線をすべてクリアします:

2。「ページレイアウト」タブに移動し、グループの隅にあるページ設定ダイアログ起動ツール(小さな矢印)をクリックして、ページ設定ダイアログを開きます。

3。「ページ設定」で「シート」タブに切り替え、「グリッド線」の「印刷」セクションをオンにして、ページ端を含むすべてのグリッド線を印刷できるようにします。

4。「印刷プレビュー」をクリックして、結果を確認しましょう。印刷すると、各ページの最も外側にグリッド線が印刷され、はっきりとした長方形の枠ができて、まるでページ罫線のように見えます。サンプルをご参照ください:

ヒント:
- より太く目立つ罫線が必要な場合は、印刷範囲に手動で外枠を追加するか、マクロを使ってページのアウトラインを描画することをご検討ください。
- 結合セルや不規則なセル範囲は避けましょう。これらは印刷時のグリッド線の視覚的な連続性を損なうおそれがあります。
- 印刷前には必ずプレビューを確認し、期待通りの仕上がりになることを保証してください。

KUTOOLS AI でExcel の魔法を解き放ちましょう
- スマート実行:セル操作、データ分析、チャート作成をすべてシンプルなコマンドで実現します。
- カスタム数式:ワークフローの効率化に役立つ、あなただけのカスタマイズ数式を生成します。
- VBA コーディング:VBA コードを簡単に記述・実装できます。
- 数式の解釈:複雑な数式が簡単に理解できます。
- テキスト翻訳:スプレッドシート内で言語の壁を乗り越えましょう!
Kutools for Excel でワンクリックで各ページの周囲に罫線を印刷
複雑な書式設定を含むワークシートや、グリッド線だけでは物足りない場合など、よりプロフェッショナルな見た目のページ罫線をお求めの方に、Kutools for Excelは便利なソリューションをご提供します:改ページに罫線を追加機能です。このツールを使えば、アクティブなワークシートのすべての印刷可能ページにワンクリックでしっかりとした罫線を追加でき、時間を節約しながら全ページで統一感のある仕上がりを実現します。
Kutools for Excel をインストール後、以下の手順で改ページに罫線を追加を行います:
1。罫線を追加したいシートをアクティブにして、「エンタープライズ > 印刷 > 改ページに罫線を追加」に移動してください。スクリーンショットを参照してください:
2。続行すると既存のすべての罫線が削除されると警告するダイアログが表示された場合は、作業内容がすでに保存済みであるか、罫線を上書きしても問題ないことをご確認ください。「はい」をクリックして続行します:
適用後、ワークシートの各ページが太く明確な罫線で囲まれるため、印刷結果が整理され、区別しやすくなります。この方法なら素早く処理でき、手作業も最小限に抑えられます。
ヒントと注意事項:
- このオプションを使用すると、現在のワークシートに設定されている既存の罫線がすべて削除されます。
- 特定の罫線を保持する必要がある場合は、あらかじめファイルまたはワークシートのバックアップを取得することをおすすめします。
- このオプションは、複数の印刷ページにわたって一貫性があり、視覚的に明確なページ罫線が必要な大規模なワークシートに最適です。
VBA マクロによる自動化で各ページの周囲に罫線を印刷
定期的なタスクやカスタムレイアウトで、すべての印刷可能ページの周囲に罫線を自動的に追加したい場合は、Excel の改ページ情報を読み取り、ページアウトラインを描画する VBA マクロをご利用いただけます。これにより、アドインに頼ることなく、罫線のスタイルや太さを完全に自由に制御できます。
注意事項:
- マクロは、各印刷可能ページの外周(上/左/下/右)にのみ罫線を描画し、既存の内部セル罫線は上書きしません。
- 構造が整ったシートで最も効果を発揮します。ただし、複雑な結合セルや特殊な印刷範囲には若干の調整が必要となる場合があります。
操作手順:
1。「Alt + F11」を押して、Visual Basic for Applications エディターを開きます。次に、「挿入 > 標準モジュール」をクリックして、新しいモジュールを追加します。
2。次のコードをモジュールにコピー&ペーストしてください:
Sub AddBorderToEachPrintablePage()
Dim ws As Worksheet
Dim LastRow As Long, LastCol As Long
Dim StartRow As Long, EndRow As Long
Dim StartCol As Long, EndCol As Long
Dim vRowBreaks As Variant, vColBreaks As Variant
Dim i As Long, j As Long
Dim oldDisp As Boolean
Dim f As Range
Set ws = ActiveSheet
Application.ScreenUpdating = False
Application.EnableEvents = False
' Check if sheet is empty
Set f = ws.Cells.Find(What:="*", LookIn:=xlFormulas, LookAt:=xlPart, _
SearchOrder:=xlByRows, SearchDirection:=xlPrevious, MatchCase:=False)
If f Is Nothing Then GoTo CleanUp
LastRow = ws.Cells.Find(What:="*", LookIn:=xlFormulas, LookAt:=xlPart, _
SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
LastCol = ws.Cells.Find(What:="*", LookIn:=xlFormulas, LookAt:=xlPart, _
SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column
' Force refresh of page breaks
oldDisp = ws.DisplayPageBreaks
ws.DisplayPageBreaks = True
' Collect horizontal page breaks (add top and bottom bounds)
vRowBreaks = Array(0)
For i = 1 To ws.HPageBreaks.Count
vRowBreaks = ArrayJoin(vRowBreaks, Array(ws.HPageBreaks(i).Location.Row - 1))
Next i
vRowBreaks = ArrayJoin(vRowBreaks, Array(LastRow))
' Collect vertical page breaks (add left and right bounds)
vColBreaks = Array(0)
For j = 1 To ws.VPageBreaks.Count
vColBreaks = ArrayJoin(vColBreaks, Array(ws.VPageBreaks(j).Location.Column - 1))
Next j
vColBreaks = ArrayJoin(vColBreaks, Array(LastCol))
' Draw only outer borders for each printable page
For i = 0 To UBound(vRowBreaks) - 1
StartRow = vRowBreaks(i) + 1
EndRow = vRowBreaks(i + 1)
For j = 0 To UBound(vColBreaks) - 1
StartCol = vColBreaks(j) + 1
EndCol = vColBreaks(j + 1)
With ws.Range(ws.Cells(StartRow, StartCol), ws.Cells(EndRow, EndCol))
With .Borders(xlEdgeTop)
.LineStyle = xlContinuous: .Weight = xlThick
End With
With .Borders(xlEdgeLeft)
.LineStyle = xlContinuous: .Weight = xlThick
End With
With .Borders(xlEdgeBottom)
.LineStyle = xlContinuous: .Weight = xlThick
End With
With .Borders(xlEdgeRight)
.LineStyle = xlContinuous: .Weight = xlThick
End With
End With
Next j
Next i
CleanUp:
ws.DisplayPageBreaks = oldDisp
Application.EnableEvents = True
Application.ScreenUpdating = True
If Not f Is Nothing Then
MsgBox "Borders have been added to each printable page!", vbInformation, "AddBorderToEachPrintablePage"
End If
End Sub
Function ArrayJoin(a As Variant, b As Variant) As Variant
Dim temp() As Variant
Dim alen As Long, blen As Long, k As Long
alen = UBound(a) - LBound(a) + 1
blen = UBound(b) - LBound(b) + 1
ReDim temp(0 To alen + blen - 1)
For k = 0 To alen - 1
temp(k) = a(k)
Next k
For k = 0 To blen - 1
temp(alen + k) = b(k)
Next k
ArrayJoin = temp
End Function
3。Excel に戻り、対象のワークシートがアクティブになっていることを確認してから、「F5」キー(または「)実行」ボタン)でマクロを実行してください。マクロは改ページを自動検出し、各印刷可能ページブロックの周囲に太い罫線を描画します。
ヒント:
- 罫線のスタイルや太さを変更するには、次の4 つの
xlEdge*セクションを編集してください(例:.Weight = xlMedium、色は.Colorで指定)。 - カスタム印刷範囲が設定されている場合、Excel の改ページはその範囲に従って調整されます。「印刷プレビュー」で結果を必ずご確認ください。
- マクロを実行する前に、必ずブックを保存してください。繰り返し使用する場合は、マクロ有効ファイル()
.xlsm)として保存しましょう。 - コンテンツが見つからない場合は、マクロが安全に終了し、メッセージを表示します(空のシートでエラーが発生するのを防止)。
マクロが期待通りに動作しない場合は、結合されたセルや非表示の行/列、「1 ページ幅×N ページ高さに合わせる」などの特殊な拡大縮小設定を確認してください。印刷範囲やページ設定を調整してページブロックを最適化し、再度マクロを実行できます。
各ページの周囲に罫線を追加
最高の Office 業務効率化ツール
| 🤖 | KUTOOLS AI アシスタント:次に基づいてデータ分析を革新します:インテリジェント実行 | コード生成| カスタム数式作成 | データ分析とチャート生成| 拡張機能呼び出し… |
| 人気の機能:検索・ハイライト、または重複をマーキング | 空白行を削除する | データを失うことなく列の結合またはセルを | 数式を使用しない四捨五入... | |
| スーパー LOOKUP:複数条件 VLookup | 複数値 VLookup | 複数シート間 VLookup | ファジーマッチ.... | |
| 高度なドロップダウンリスト:ドロップダウンリストをすばやく作成 | 連動型ドロップダウンリスト | 複数選択可能なドロップダウンリスト.... | |
| 列マネージャー:指定した数の列を追加|列の移動|非表示列の表示状態を切り替え|範囲および列の比較... | |
| 注目の機能:グリッドフォーカス | デザインビュー |強化された数式バー | ワークブックとシートマネージャー | リソースライブラリ(オートテキスト)| 日付ピッカー | ワークシートの統合 | 暗号化/セルの復号化 | リストからメール送信 | スーパーフィルター | 特殊フィルタ(太字のフォントを持つセルをフィルタリング/斜体/取り消し線。。。) 。。。 | |
| トップ15 ツールセット:12 テキストツール(テキストの追加、特定の文字を削除、...)| 50+チャートタイプ(ガントチャート、...)| 40+実用的関数(誕生日に基づいて年齢を計算します、...)| 19 挿入ツール(QR コードを挿入、パスから画像を挿入、...)| 12 変換ツール(単語に変換する、為替レートの変換、...)| 7 結合と分割ツール(高度な行のマージ、セルの分割、...)|さらに多数 |
Kutools for Excel でExcel スキルを強化し、これまでにない効率を体験しましょう。Kutools for Excel は、生産性を高め、時間を大幅に節約できる高度な機能を300 以上提供します。最も必要な機能を今すぐ入手するにはこちらをクリック。。。
Office Tab は Office にタブインターフェースをもたらし、作業を大幅に簡単にします
- Word、Excel、PowerPoint でタブを使った編集と閲覧を有効にします。Publisher、Access、Visio、Project でもご利用いただけます。
- 複数のドキュメントを、新しいウィンドウではなく、同じウィンドウ内の新しいタブで開いたり作成したりできます。
- 日々の生産性を50%も向上させ、毎日数百回ものマウスクリックを削減します!
すべてのKutools アドインが、たった1 つのインストーラーで完結。
Kutools for Officeスイートには、Excel ・Word ・Outlook ・PowerPoint 用のアドインと Office Tab Pro が含まれており、複数の Office アプリを横断して作業するチームに最適です。
- オールインワンスイート— Excel、Word、Outlook、PowerPoint 用アドイン+Office Tab Pro
- インストーラー1 つ、ライセンス1 つ— 数分でセットアップ可能(MSI 対応)
- 連携してさらにパワーアップ— Office アプリ全体で生産性が向上
- 30 日間のフル機能トライアル— 登録不要、クレジットカード不要
- 最高のお得感— 個別アドイン購入よりお得