Języki programowania dają możliwość stosowania dwóch rodzajów argumentów opcjonalnych: argumenty z domyślną wartością argumenty bez wartości domyślnejta grupa argumentów opcjonalnych obejmuje również argumenty specyfikowane dla podprogramów ze zmienną liczbą argumentów.
Przykładem deklaracji argumentu opcjonalnego jest deklaracja i definicja prostego podprogramu w języku VBA: Sub MsgBL(M As String, Optional P As Variant) If IsMissing(P) Then MsgBox(M) Else If P Then MsgBox(M) End If End Sub
Jak widać w powyższym przykładzie parametr P jest zadeklarowany z modyfikatorem Optional. Oznacza to, że danemu parametrowi odpowiada w wywołaniu pewien argument opcjonalny i każde z poniższych wywołań tej procedury jest prawidłowedla wywołania, które spowoduje wyświetlenie okienka z komunikatem, gdyby wartość argumentu była False okienko oczywiście nie wyświetli się: Call MsgBL("Komunikat") Call MsgBL("Komunikat", True)