【Excel】選択範囲に罫線を引いてオートフィルタを設定するマクロ

選択範囲に罫線を引いてオートフィルタを設定するマクロ

仕事でExcelを使ってドキュメントを作成するときに罫線を引いて表を描いて、ヘッダにオートフィルタを設定するということをよくやるのでショートカットキー一発でできるようにVBAマクロを作りました。

Sub WriteTable()

    ' 選択範囲の外枠
    Selection.BorderAround Weight:=xlMedium

    ' 内側垂直線は連続線
    Range(Selection(1),   
    Selection(Selection.Count)).Borders(xlInsideVertical).LineStyle = xlContinuous

    ' 内側水平線は点線
    Range(Selection(1), 
    Selection(Selection.Count)).Borders(xlInsideHorizontal).LineStyle = xlThin

    ' ヘッダ部(1行目)下部を2重線
    Range(Selection(1), Cells(Selection(1).Row, 
    Selection(Selection.Count).Column)).Borders(xlEdgeBottom).LineStyle = xlDouble

    ' ヘッダ部(1行目)セルを水色
    Range(Selection(1), Cells(Selection(1).Row, 
    Selection(Selection.Count).Column)).Interior.ColorIndex = 8

    ' ヘッダ部にオートフィルタをつける
    Range(Selection(1), Cells(Selection(1).Row, 
    Selection(Selection.Count).Column)).AutoFilter

End Sub

使い方

表を描きたい範囲のセルを選択してこのマクロを実行すると、罫線を引いて一番上の行にオートフィルタを設定します。

ショートカットキーを割り当てておくとより素早く表が作成できるようになります。セルの色や線の種類は好みに応じて変更できます。

Excel

Posted by fanfanta