VBA再入門
セルの書式を設定する(NumberFormatLocal,Font,Borders,Interior)

マクロが覚えられないという初心者向けに理屈抜きのやさしい解説
最終更新日:2021-05-02

第14回.セルの書式を設定する(NumberFormatLocal,Font,Borders,Interior)


エクセルは表計算ソフトなので、計算が主体で、その計算結果こそが重要です。
とはいえ、その結果を表示する表の見栄えも重要な要素になります。


数値の表示形式、配置、フォント、罫線、塗りつぶし、等々、
セルの書式を整えて見やすい表にしたいところです。

「セルの書式設定」ダイアログ画面

マクロVBAでセルの書式を設定する時は、
必ず、シートでの「セルの書式設定」ダイアログ画面と対で覚えるようにしましょう。

エクセル マクロVBA 参考画像

・表示形式
・配置
・フォント
・塗りつぶし
・保護

ここで設定できる内容については、一通り見ておいてください。
どんな設定が出来るか知らなければ、何も始まりません、マクロVBA以前の問題です。

セルの書式設定のマクロVBAコードは、
「マクロの記録」で簡単に調べることが出来ますので、特に細部を覚える必要はありません。
とはいえ、良く使うものを含め、最低限の書き方は覚えておく必要はあります。

表示形式

A1セルを、カンマ区切り、0サプレス、ゼロはブランク
A2セルを、平成○○年○○月○○日
A3セルを、パーセント、小数以下2桁、ゼロは0.00%
A4セルを、文字列


マクロ VBA サンプル画像

セル(Range,Cells)のNumberFormatLocalプロパティに値(書式文字)を入れる事で、表示形式を設定します。

NumberFormatプロパティもあり、ほぼ同様ですが、\12,345のようなロケール依存の表示はNumberFormatLocalを使います。
無用なトラブル回避のためにも、NumberFormatLocalを使ってください。
書式文字は、シートでの「セルの書式設定」の「ユーザー定義」とほぼ同様(違う場合もありますが)なので、これを参考にしてください。

フォント

A1セルを、フォントサイズを14
A2セルを、文字色を赤色
A3セルを、太字


エクセル マクロ VBAコード

セル(Range,Cells)のFontオブジェクトの各種プロパティに値を入れる事で設定します。

色の基本8色は、定数として
vbBlack、vbRed、vbGreen、vbYellow、vbBlue、vbMagenta、vbCyan、vbWhite
以上が用意されています。

自由に色指定したい場合は、RGB関数を使ってください。
RGB値を作成する関数として、RGB関数が用意されています。
RGB(red, green, blue)
red, green, blue、それぞれを0~255で指定します。
RGB(255, 0, 0) '赤
RGB(255, 255, 255) '白
RGB(0, 0, 0) '黒

罫線

A1:B5を、外枠太線、内側を普通の格子線

エクセル マクロ VBAコード

セル(Range,Cells)のBordersオブジェクトのプロパティに値を入れる事で設定します。
LineStyle ・・・ 線の種類
Weight ・・・ 線の太さ


Bordersに()で上下左右の線を引く位置を指定出来ます。
()を省略すると、上下左右に線を引きます。

外枠の罫線については、以下の書き方もあります。
エクセル マクロ VBAコード

指定範囲の外枠に対して線を引くときは、
BorderAround
これも使えますが、これはメソッドになり使い方が少々難しくなります。

塗りつぶし

A1セルを、青で塗りつぶし
A2セルを、赤(R):200、緑(G):80、青(B):120


エクセル マクロ VBAコード

セル(Range,Cells)のInteriorオブジェクトのプロパティに値を入れる事で設定します。

色の基本8色は、定数として
vbBlack、vbRed、vbGreen、vbYellow、vbBlue、vbMagenta、vbCyan、vbWhite
これらが用意されています。
RGBは関数になります。
RGB(赤, 緑, 青)
赤,緑,青にそれぞれ0~255の数値を指定して色を表現します。

「セルの書式を設定する」のまとめ

・表示形式
・フォント
・罫線
・塗りつぶし
以上についてざっくりと説明しましたが、上記以外の詳細な書式設定方法は、
随時、「マクロの記録」を使い、必要なプロパティとその値を調べて使うようにしてください。

ExcelマクロVBA入門の対応ページ

第31回.セルの書式(表示形式,NumberFormatLocal)
・マクロでの表示書式の指定 ・表示書式指定文字 ・表示書式指定文字の調べ方 ・Range.NumberFormatについて

第32回.セルの書式(配置,Alignment)
セル内での値を表示する位置(縦位置、横位置)をマクロVBAで指定できます。「セルの書式設定」→「配置」で指定する内容です。マクロVBAでの配置の指定 Range.プロパティ=設定値 指定できるプロパティの設定値は以下になります。

第33回.セルの書式(フォント,Font)
・マクロでの指定 ・色定数 ・RGB関数 ・色の指定を解除(自動) ・フォント(Font)設定についての注意点

第34回.セルの書式(塗りつぶし,Interior)
・マクロVBAでのInterior指定 ・色定数 ・RGB関数 ・塗りつぶしなし ・条件付き書式との使い分け

第35回.セルの書式(罫線,Border)
・A1セル~B5セルに格子線を引いた時のマクロの記録 ・マクロVBAでの罫線指定 ・Bordersのプロパティ ・Range.BorderAroundメソッド ・マクロVBAでの罫線の注意点



同じテーマ「マクロVBA再入門」の記事

第11回.分からない事はエクセルに聞く(マクロの記録)
第12回.エクセルの言葉を理解する(オブジェクト、プロパティ、メソッド)
第13回.セルのコピペ方法を知る(CopyとPaste、さらに)
第14回.セルの書式を設定する(NumberFormatLocal,Font,Borders,Interior)
第15回.手作業で出来なければマクロは書けない
第16回.エクセルの機能を上手に使う
第17回.セルにブック・シートを指定する(Workbooks,Worksheets,With,Set)
第18回.シートをコピー・挿入・削除する(Worksheets,Copy,Add,Delete)
第19回.ブックを開く・閉じる・保存する(Workbooks,Open,Close,Save,SaveAs)
第20回.全てのシートに同じ事をする(For~Worksheets.Count)
第21回.ファイル一覧を取得する(Do~LoopとDir関数)


新着記事NEW ・・・新着記事一覧を見る

シート関数のCOUNTIFS,SUMIFS,MAXIFSと同じ処理|Power Query(M言語)入門(2023-02-28)
新旧マスタの差異比較|Power Query(M言語)入門(2023-02-28)
有効な最新単価の取得|Power Query(M言語)入門(2023-02-26)
有効な最新単価の取得|Power Query(M言語)入門(2023-02-21)
グルーブ内の最小・最大|Power Query(M言語)入門(2023-02-17)
2つのテーブルのマージ|Power Query(M言語)入門(2023-02-15)
「売上」が数値の行のみ取り込む|Power Query(M言語)入門(2023-02-13)
A列のヘッダー名を変更する|Power Query(M言語)入門(2023-02-11)
CSVのA列が日付の行だけを取り込む|Power Query(M言語)入門(2023-02-10)
列数不定のCSVの取り込み|Power Query(M言語)入門(2023-02-09)


アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.RangeとCellsの使い方|VBA入門
3.変数宣言のDimとデータ型|VBA入門
4.繰り返し処理(For Next)|VBA入門
5.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
6.マクロって何?VBAって何?|VBA入門
7.並べ替え(Sort)|VBA入門
8.エクセルVBAでのシート指定方法|VBA技術解説
9.Range以外の指定方法(Cells,Rows,Columns)|VBA入門
10.ブックを閉じる・保存(Close,Save,SaveAs)|VBA入門




このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


記述には細心の注意をしたつもりですが、
間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。
掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。



このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
本文下部へ