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

マクロが覚えられないという初心者向けに理屈抜きのやさしい解説
公開日:2015-09-22 最終更新日: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 ・・・新着記事一覧を見る

カンマ区切りデータの行展開|エクセル練習問題(2026-01-28)
開いている「Excel/Word/PowerPoint」ファイルのパスを調べる方法|エクセル雑感(2026-01-27)
IMPORTCSV関数(CSVファイルのインポート)|エクセル入門(2026-01-19)
IMPORTTEXT関数(テキストファイルのインポート)|エクセル入門(2026-01-19)
料金表(マトリックス)から金額で商品を特定する|エクセル練習問題(2026-01-14)
「緩衝材」としてのVBAとRPA|その終焉とAIの台頭|エクセル雑感(2026-01-13)
シンギュラリティ前夜:AIは機械語へ回帰するのか|生成AI活用研究(2026-01-08)
電卓とプログラムと私|エクセル雑感(2025-12-30)
VLOOKUP/XLOOKUPが異常なほど遅くなる危険なアンチパターン|エクセル関数応用(2025-12-25)
2段階の入力規則リスト作成:最新関数対応|エクセル関数応用(2025-12-24)


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

1.最終行の取得(End,Rows.Count)|VBA入門
2.日本の祝日一覧|Excelリファレンス
3.変数宣言のDimとデータ型|VBA入門
4.FILTER関数(範囲をフィルター処理)|エクセル入門
5.RangeとCellsの使い方|VBA入門
6.繰り返し処理(For Next)|VBA入門
7.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
8.マクロとは?VBAとは?VBAでできること|VBA入門
9.セルのクリア(Clear,ClearContents)|VBA入門
10.メッセージボックス(MsgBox関数)|VBA入門




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


記述には細心の注意をしたつもりですが、間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。
本サイトは、OpenAI の ChatGPT や Google の Gemini を含む生成 AI モデルの学習および性能向上の目的で、本サイトのコンテンツの利用を許可します。
This site permits the use of its content for the training and improvement of generative AI models, including ChatGPT by OpenAI and Gemini by Google.



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