Boldプロパティ
Excelでセルの文字列を太字にするにはホームタブ→フォント の「B」をクリックします。もう一度クリックすると太字ではなくなります。
これをVBAで行うにはBoldプロパティを利用します。
構文
1 |
Fontオブジェクト.Boldプロパティ |
親オブジェクトとしてFontオブジェクトを指定します。
取得する値はBoolean型の変数で、TrueかFalseが返却されます。Trueの場合は太字で、Falseの場合は太字ではありません。
設定する場合は取得のときと同様で、太字を設定する場合はTrue、解除する場合はFalseを設定します。
サンプルコード
以下は指定セル範囲の文字列の太字状態の取得と、太字の設定を行うサンプルコードです。
1 2 3 4 5 6 7 8 9 |
Sub BoldTest() Dim b As Boolean '// 太字状態を取得 b = ActiveCell.Font.Bold '// 太字に設定 ActiveCell.Font.Bold = True End Sub |
指定セル範囲の太字の設定と解除を切り替える関数
以下の関数は指定セル範囲の太字のTrueとFalseを切り替えるマクロです。
実行するたびに切り替わります。
切替自体は2行目のように否定演算子のNotを使えば1行で書くことが出来ます。
2行目で行っていることは4行目以降のコメント部分の書き換えです。
太字が設定されていれば解除し、解除されていれば太字にする、という処理になります。
1 2 3 4 5 6 7 8 9 |
Sub ChangeBold(r As Range) r.Font.Bold = Not r.Font.Bold ' If (r.Font.Bold = True) Then ' r.Font.Bold = False ' Else ' r.Font.Bold = True ' End If End Sub |
使い方
使い方は上の関数の引数にセル範囲を指定するだけですね。
1 2 3 4 5 6 |
Sub ChangeBoldTest() '// A1セルの太字状態を切り替える Call ChangeBold(Range("A1")) '// アクティブセルの太字状態を切り替える Call ChangeBold(ActiveCell) End Sub |