Compartilhar via


Função de comando

Retorna a parte do argumento da linha de comando usada para iniciar o Microsoft Visual Basic ou um programa executável desenvolvido com o Visual Basic. A função Comando Do Visual Basic está disponível no Microsoft Access, mas não em outros aplicativos do Microsoft Office.

Sintaxe

Comando

Comentários

Quando o Visual Basic é iniciado da linha de comando, qualquer parte da linha de comando a seguir /cmd é passada para o programa como o argumento de linha de comando. No exemplo de linha de comando a seguir, cmdlineargs representa as informações de argumento retornadas pela função Comando .

VB /cmd cmdlineargs

Para aplicativos desenvolvidos com o Visual Basic e compilados em um arquivo .exe, o Comando retorna todos os argumentos que aparecem após o nome do aplicativo na linha de comando. Por exemplo:

MyApp cmdlineargs

Para descobrir como os argumentos de linha de comando podem ser alterados na interface do usuário do aplicativo que você está usando, pesquise Ajuda para obter "argumentos de linha de comando".

Exemplo

Este exemplo usa a função Command para obter os argumentos de linha de comando em uma função que os retorna em uma Variant que contém uma matriz. Disponível no Microsoft Access, mas não em outros aplicativos do Microsoft Office.

Function GetCommandLine(Optional MaxArgs)
    'Declare variables.
    Dim C, CmdLine, CmdLnLen, InArg, I, NumArgs
    'See if MaxArgs was provided.
    If IsMissing(MaxArgs) Then MaxArgs = 10
    'Make array of the correct size.
    ReDim ArgArray(MaxArgs)
    NumArgs = 0: InArg = False
    'Get command line arguments.
    CmdLine = Command()
    CmdLnLen = Len(CmdLine)
    'Go thru command line one character
    'at a time.
    For I = 1 To CmdLnLen
        C = Mid(CmdLine, I, 1)
        'Test for space or tab.
        If (C <> " " And C <> vbTab) Then
            'Neither space nor tab.
            'Test if already in argument.
            If Not InArg Then
            'New argument begins.
            'Test for too many arguments.
                If NumArgs = MaxArgs Then Exit For
                NumArgs = NumArgs + 1
                InArg = True
            End If
            'Concatenate character to current argument.
            ArgArray(NumArgs) = ArgArray(NumArgs) & C
        Else
            'Found a space or tab.
            'Set InArg flag to False.
            InArg = False
        End If
    Next I
    'Resize array just enough to hold arguments.
    ReDim Preserve ArgArray(NumArgs)
    'Return Array in Function name.
    GetCommandLine = ArgArray()
End Function

Confira também

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.