Como: Definir parâmetros opcionais para um procedimento

Você pode especificar que um parâmetro de um procedimento é opcional, de modo que o código em execução não necessite de suprir um argumento para o procedimento, quando chamá-lo.Quando você faz isso, você define um valor-padrão que o procedimento usa se o argumento não for fornecido.

Você pode definir mais de um parâmetro opcional, mas todos os parâmetros opcionais devem estar no fim da lista de parâmetros.Todos os parâmetros requeridos devem preceder todo parâmetro opcional.

Para definir um parâmetro opcional

  1. Na declaração de procedimento, preceda o nome do parâmetro na lista de parâmetros com a palavra-chave Optional.

  2. Siga o nome do parâmetro com uma cláusula As como é usual, e siga a cláusula As com um sinal de igualdade (=).

  3. Siga o sinal de igualdade com o valor-padrão para o parâmetro.Este deve conter uma expressão constante, de modo que o compilador possa avaliá-lo completamente em tempo de compilação.

  4. Você deve declarar cada parâmetro subsequente como Optional.

Exemplo

O exemplo a seguir mostra uma declaração de procedimento com um parâmetro opcional.

Sub notify(ByVal company As String, Optional ByVal office As String = "QJZ")
    If office = "QJZ" Then
        Debug.WriteLine("office not supplied -- using Headquarters")
        office = "Headquarters"
    End If
    ' Insert code to notify headquarters or specified office.
End Sub

Se o código em execução não fornece um valor para office na lista de agumentos, Visual Basic fornece o valor-padrão de "QJZ".

Compilando o código

Você deve especificar um valor-padrão para cada parâmetro opcional na declaração de procedimento.Tenha certeza de que cada valor-padrão é uma constante que o compilador pode avaliar em tempo de compilação.

Consulte também

Tarefas

Como: telefonar um procedimento que tem parâmetros opcionais

Como: Determine se foi fornecido um parâmetro opcional

Conceitos

Parâmetros do procedimento e argumentos

Argumento Passing By valor e por referência

Passagem de Argumentos por Posição e Nome

Parâmetros Opcionais

Matrizes de parâmetro

Sobrecarga de procedimento

Referência

Opcional (Visual Basic)

ParamArray