次に、セルに入力されたデータの「フォントの種類」「フォントサイズ」「フォントの文字色」「セルの塗りつぶし」「フォントの斜体」「フォントの太字」などを設定してみよう。
まず、図3のデータの「社員名簿」というセルのデータの、「書体」「文字サイズ」「文字色」を変えてみよう。
単にデータだけであっても、無味乾燥な数字だけの羅列ではなく、ちゃんと書式が設定されたデータは、見栄えも良いし、プレゼンテーションの資料としても十分に利用できる。書式設定をマクロ化しておくと、格段にデータの見栄えが良くなり、上司からの受けも良くなること、確実である。
マクロはリスト2のようになる。
- Sub セルのフォントに関する書式設定()
- With Range("B2").Font
- .Name = "游ゴシック"
- .Size = 20
- .ColorIndex = 3
- .Bold = True
- End With
- End Sub
ここで初めて出てきた「With」だが、「With」~「End With」ステートメントを使うと、オブジェクトを省略して記述できる。例えば、上記「.Name」は本来「Range("B2").Font.Name」、「.Size」は本来「Range("B2").Font.Size」と記述するが、同じものを繰り返し書くと、長くなるので面倒だ。「With」~「End With」内では、プロパティの頭に「.」を付けるが、オブジェクトの指定を省略できるので便利だ。
書体(Name)には「Meirio UI」を指定。文字サイズ(Size)には20を指定。文字色(ColorIndex)には「赤」を表す「3」を指定。どの色がどのColorIndexに該当するかは、図4参照。
太字(Bold)にはTrueを指定して「太字」とする。「太字」以外に「斜体」を表す「Italic」や下線を引く「Underline」がある。Trueを指定することで、これらの書式が適用される。
リスト2を実行すると図5のように表示される。
次に、「社員名簿」と「氏名」の文字位置を「中央揃え」に設定し、文字色を「青」系統色にしてみよう。マクロはリスト3のようになる。
- Sub 項目名の文字位置を「中央揃え」にし文字色を青系統色にする()
- With Range("B3:C3")
- .Font.ColorIndex = 32
- .Font.Bold = True
- .HorizontalAlignment = xlCenter
- End With
- End Sub
文字位置(水平位置)を指定するにはHorizontalAlignmentプロパティを指定する。指定する値は表3を参照。
定数 | 水平文字位置 |
---|---|
xlGeneral | 標準(規定値) |
xlLeft | 左寄せ |
xlCenter | 中央揃え |
xlRight | 右寄せ |
xlFill | 繰り返し |
xlJustify | 両端揃え |
xlCenterAcrossSelection | 選択範囲内で中央 |
xlDistributed | 均等割り付け |
リスト3を実行すると図6のように項目名が「中央揃え」で「太字」かつ「青」で表示された。
文字位置をそろえるには、表3の水平位置をそろえるHorizontalAlignment以外に、垂直方向をそろえるVerticalAlignmentがある。値は表7を参照。
定数 | 垂直文字位置 |
---|---|
xlTop | 上詰め |
xlCenter | 中央揃え(規定値) |
xlBottom | 下詰め |
xlJustify | 両端揃え |
xlDistributed | 均等割り付け |
セルの背景色を設定するには、Interiorプロパティを使用する。図6の「社員番号」と「氏名」セルの背景色をグレーで塗りつぶすには、リスト4のように記述する。
- Sub セルの塗りつぶし()
- Range("B3:C3").Interior.ColorIndex = 15
- End Sub
指定したセルの背景色は、InteriorオブジェクトのColorIndexプロパティで設定する。ColorIndexに指定する値は、図4参照。
リスト4を実行すると、図7のように表示される。
Copyright © ITmedia, Inc. All Rights Reserved.
HTML5+UX 記事ランキング