Se hace mediante la palabra clave Optional.
Cuando un parámetro es opcional los siguientes también deben serlo.
Para saber si el parámetro fue enviado usa la función IsMissing.
Sub nombre(Optional [Byval ó Byref] parametro_opcional As tipo)
.....
If IsMissing(parametro_opcional) Then
'Código que se ejecuta si no se pasó ningún valor para parametro_opcional
End If
.....
End Sub