選択範囲を表として整形するExcelマクロ

選択範囲を表として整形するExcelマクロ

8月ももう終わりですね。横浜に住み始めてから、あまり夕立に遭わなくなった気がします。土地柄なのか、それとも帰宅時間が変わったからでしょうか。

作業が落ち着いた隙に、あればいいなと前から思っていたマクロを実装してみました。
表にしたい範囲のセルを選択して実行すると、選択範囲を整形します。

実行前.png

実行後.png

仕様は次のとおりです。

  • 選択範囲に罫線を格子状に引く
  • 1番上の行に色を塗り、中央寄せにする
  • 選択範囲全体の列幅を自動調整する

Sub MakeTable_from_SelectedRange()

''選択範囲に罫線を引く
Selection.Borders.LineStyle = xlContinuous

''見出し行を整形し、列幅を最適化
With Range(Cells(Selection(1).Row, Selection(1).Column), Cells(Selection(1).Row, Selection(Selection.Count).Column))
.Interior.ColorIndex = 19
.HorizontalAlignment = xlHAlignCenter
.EntireColumn.AutoFit
End With

''左上のセルに移動
Cells(Selection(1).Row, Selection(1).Column).Select

End Sub

手をつける前は面倒そうに感じていたのですが、いざ作ってみるととても単純でした。

これで、Excelでデータを入力したあとにぽちぽち罫線を引き、センタリングして、列幅を整えて‥という面倒な作業をさくっと完了させることができます。使い方によっては、選択範囲の罫線や塗りつぶしをクリアする挙動を初期化処理として追加しても良いかもしれません。

----------お知らせ----------
株式会社シーブレインでは、フリーランス翻訳者を募集しています。

リンク先のページに記載されている説明をお読みいただき、要項に従ってご応募ください。

みなさまからのチャレンジをお待ちしております!

この記事を読んだ人にオススメ