VBAでセルの罫線を細かく設定・取得する方法【EdgeとInsideの使い分け】

目次

概要

Excelでは、セルに罫線を引くことで表の構造を明確にできます。特に、外枠・内側・上下左右など、細かい部分ごとに罫線を個別設定したい場面は多くあります。

本記事では、VBAを使ってセルの罫線を細かく設定・取得する方法をご紹介いたします。さらに、Excelのグリッド線を非表示にする方法も合わせて解説いたします。

サンプルコード

vbコピーする編集するSub SetDetailedCellBorders()

    Dim targetRange As Range
    Set targetRange = Range("E3:G6")

    ' 上端の罫線を中太の実線に設定
    With targetRange.Borders(xlEdgeTop)
        .LineStyle = xlContinuous
        .Weight = xlMedium
    End With

    ' 下端の罫線を中太の実線に設定
    With targetRange.Borders(xlEdgeBottom)
        .LineStyle = xlContinuous
        .Weight = xlMedium
    End With

    ' 内側の横方向の罫線を点線に設定
    targetRange.Borders(xlInsideHorizontal).LineStyle = xlDot

    ' グリッド線を非表示にする(視認性向上)
    ActiveWindow.DisplayGridlines = False

End Sub

コード解説

.Borders(xlEdgeTop) / .Borders(xlEdgeBottom)

  • 範囲の上端・下端に罫線を設定します。
  • LineStylexlContinuous(実線)、WeightxlMedium(中太)を指定しています。

.Borders(xlInsideHorizontal)

  • セル範囲の内側の横方向の罫線に対して xlDot(点線)を適用しています。
  • 縦方向は .Borders(xlInsideVertical) で制御可能です。

ActiveWindow.DisplayGridlines = False

  • Excelのグリッド線を非表示にします。独自に引いた罫線だけが表示されるため、より見やすくなります。

利用可能な罫線の位置(定数一覧)

定数名対象範囲
xlEdgeTop範囲の上端
xlEdgeBottom範囲の下端
xlEdgeLeft範囲の左端
xlEdgeRight範囲の右端
xlInsideHorizontal範囲内の横罫線
xlInsideVertical範囲内の縦罫線

表示スタイル(LineStyle)と太さ(Weight)の例

LineStyle内容
xlContinuous実線
xlDot点線
xlDash破線
Weight内容
xlThin細線
xlMedium中太線
xlThick太線

応用例

  • 印刷向けの表のデザインを整える
  • 入力フォームで入力欄とラベルを視覚的に区別する
  • 条件に応じて罫線スタイルを動的に切り替える

まとめ

本記事では、VBAでセルの罫線を細かく設定・取得する方法をご紹介いたしました。Borders プロパティを使えば、外枠・内側・上下左右など、あらゆる部分の罫線を柔軟にコントロールできます。

罫線の活用により、Excelの表がより明確で視認性の高いものになります。特にレポート作成や帳票整形の場面で、ぜひご活用ください。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

私が勉強したこと、実践したこと、してることを書いているブログです。
主に資産運用について書いていたのですが、
最近はプログラミングに興味があるので、今はそればっかりです。

目次