では「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を渡すと太字になる。
練習問題
- 色を省略可能にする
文字列を書き込むときに、色を指定できるようにしてみましょう。
省略した場合は黒(既定値)になるようにします。
ヒント:
Optional ByVal color As Long = vbBlack
VB
