Excel VBA | 引数を省略可能にする Optional の使い方

VBA
スポンサーリンク

では「Optional引数」を使った練習課題を一緒にやってみましょう。


課題:セルに文字列を書き込むけど、太字にするかどうかを省略可能にする

完成コード例

Sub PutText(ByVal sheetName As String, ByVal addr As String, ByVal text As String, Optional ByVal bold As Boolean = False)
    ' sheetName: シート名
    ' addr: セルの場所 (例 "A1")
    ' text: 書き込む文字列
    ' bold: 太字にするかどうか(省略可能、既定値はFalse)

    With Worksheets(sheetName).Range(addr)
        .Value = text
        .Font.Bold = bold
    End With
End Sub
VB

呼び出し方の例

Sub TestPutText()
    ' boldを省略 → Falseが使われる(太字にならない)
    Call PutText("Sheet1", "A1", "タイトル")

    ' boldにTrueを渡す → 太字になる
    Call PutText("Sheet1", "A2", "重要", True)
End Sub
VB

ポイント解説

  • Optional ByVal bold As Boolean = False
    → 省略可能で、既定値はFalse(太字にしない)。
  • 呼び出し側で省略するとFalseが使われる。
  • 呼び出し側でTrueを渡すと太字になる。

練習問題

  1. 色を省略可能にする
    文字列を書き込むときに、色を指定できるようにしてみましょう。
    省略した場合は黒(既定値)になるようにします。

ヒント:

Optional ByVal color As Long = vbBlack
VB
VBA
スポンサーリンク
シェアする
@lifehackerをフォローする
スポンサーリンク
タイトルとURLをコピーしました