Das Schlüsselwort 'Optional' muss am Ende der Übergabeparameter stehen. Nach einem optionalen Parameter darf kein Muss-Parameter kommen, jedoch können weitere optionale Parameter folgen. Damit dieses Fehlerfrei funktioniert sollten die optionalen Parameter vom Typ Variant sein.
Eine weitere Möglichkeit ist, optionale Parameter mit einem Default - Wert zu verwenden.
Code
Sub Test(strText as String, Optional varWert as Variant, Optional blnOpt As Boolean=True)
'*** varWert = optionaler Parameter
'*** blnOpt = optionaler Parameter mit den Defalt-Wert "True"
If IsMissing(lngWert) Then
Debug.Print "Übergabewert nicht vorhanden"
Else
Debug.Print lngWert
End If
End Sub