【Excel VBA】視認性の良いシンプルな罫線・フォント設定をするマクロ
マクロ実行前後比較
何のため
上図のように構造化した情報をリストアップした際、セル結合による視認性向上をしたくないため。
(フィルター抽出できなくなるじゃないかああああ)
上のセルと比較してセル内容が等しかったらフォントカラーを薄くし、セル内容が異なっていたら罫線を実線で引きます。
それらの範囲指定がベタ書きなので美しいコードではありません。その都度コード修正。
簡単なコードだからこの程度で良いかーという……。
コード
Sub 視認性良く罫線とフォント設定()
'範囲選択
Range("A1").Select
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
'書式設定を初期化
Cells.FormatConditions.Delete
'罫線書式設定
Selection.FormatConditions.Add Type:=xlExpression, Formula1:="=$C1<>$C2"
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
With Selection.FormatConditions(1).Borders(xlBottom)
.LineStyle = xlContinuous
.TintAndShade = 0
.Weight = xlThin
End With
Selection.FormatConditions(1).StopIfTrue = False
'フォント書式設定
Range("B2").Select
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
Selection.FormatConditions.Add Type:=xlExpression, Formula1:="=B2=B1"
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
With Selection.FormatConditions(1).Font
.ThemeColor = xlThemeColorDark1
.TintAndShade = -0.249946592608417
End With
Selection.FormatConditions(1).StopIfTrue = False
'最後に罫線設定
Range("A1").Select
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
'基本的に実線
With Selection.Borders
.LineStyle = xlContinuous
.ColorIndex = xlAutomatic
.TintAndShade = 0
.Weight = xlThin
End With
'内側水平線のみ点線
With Selection.Borders(xlInsideHorizontal)
.Weight = xlHairline
End With
End Sub
Sub 視認性良く罫線とフォント設定()
'範囲選択
Range("A1").Select
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
'書式設定を初期化
Cells.FormatConditions.Delete
'罫線書式設定
Selection.FormatConditions.Add Type:=xlExpression, Formula1:="=$C1<>$C2"
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
With Selection.FormatConditions(1).Borders(xlBottom)
.LineStyle = xlContinuous
.TintAndShade = 0
.Weight = xlThin
End With
Selection.FormatConditions(1).StopIfTrue = False
'フォント書式設定
Range("B2").Select
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
Selection.FormatConditions.Add Type:=xlExpression, Formula1:="=B2=B1"
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
With Selection.FormatConditions(1).Font
.ThemeColor = xlThemeColorDark1
.TintAndShade = -0.249946592608417
End With
Selection.FormatConditions(1).StopIfTrue = False
'最後に罫線設定
Range("A1").Select
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
'基本的に実線
With Selection.Borders
.LineStyle = xlContinuous
.ColorIndex = xlAutomatic
.TintAndShade = 0
.Weight = xlThin
End With
'内側水平線のみ点線
With Selection.Borders(xlInsideHorizontal)
.Weight = xlHairline
End With
End Sub
Author And Source
この問題について(【Excel VBA】視認性の良いシンプルな罫線・フォント設定をするマクロ), 我々は、より多くの情報をここで見つけました https://qiita.com/fujineyuri/items/94d4be0ec1ddcaef070e著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .