VBATips

指定セルの表範囲の罫線を結合セルのように見栄えをよくする【ExcelVBA】

見栄えをよくするために表範囲に格子状に罫線を指定する場合があります。
そこから、空白になったセルの罫線を消し、見栄えよくしたい場合があります。

イメージ

aaa111あああ
いいい
bbb111あああ
222いいい
333ううう
えええ

指定セルの表範囲の罫線を結合セルのように引くコード

パーツ化しているため、コピペで対応可能です。

'■指定範囲の表の罫線を結合セルぽく見せる(見栄えよく見せる)
Public Function Call_BordersCreate(ws As Worksheet, rng As Range)
    Dim eRow As Long: eRow = Call_CurrentLastRowWS(rng, ws)
    Dim eCol As Long: eCol = Call_CurrentLastColWS(rng, ws)
 
    '■罫線を格子状に引く
    rng.CurrentRegion.Borders.LineStyle = xlContinuous
    
    Dim r As Long, c As Long
    For r = rng.Row To eRow - 1
        For c = rng.Column To eCol
        '■現在のセルの1行下が空白なら罫線を外す
        If ws.Cells(r + 1, c) = "" Then
            ws.Cells(r, c).Borders(xlEdgeBottom).LineStyle = xlNone
        End If
        Next
    Next
End Function

実際の使い方

Public Sub sample()
    Call Call_BordersCreate(ActiveSheet, Range("B2")) 'B2セルを含む表範囲の見栄えをよくする
End Sub

注意点

関連記事

コメント

タイトルとURLをコピーしました