Compartilhar via


Função de comando

Devolve a parte do argumento da linha de comandos utilizada para iniciar o Microsoft Visual Basic ou um programa executável desenvolvido com o Visual Basic. A função Visual Basic Command está disponível no Microsoft Access, mas não noutras aplicações do Microsoft Office.

Sintaxe

Comando

Comentários

Quando o Visual Basic é iniciado a partir da linha de comandos, qualquer parte da linha de comandos /cmd que se segue é transmitida para o programa como o argumento da linha de comandos. No seguinte exemplo de linha de comandos, cmdlineargs representa as informações de argumento devolvidas pela função Comando .

VB /cmd cmdlineargs

Para aplicações desenvolvidas com o Visual Basic e compiladas num ficheiro de .exe, Comando devolve todos os argumentos que aparecem após o nome da aplicação na linha de comandos. Por exemplo:

MyApp cmdlineargs

Para saber como os argumentos da linha de comandos podem ser alterados na interface de utilizador da aplicação que está a utilizar, procure "argumentos da linha de comandos" na Ajuda.

Exemplo

Este exemplo utiliza a função Comando para obter os argumentos da linha de comandos numa função que os devolve numa Variante que contém uma matriz. Disponível no Microsoft Access, mas não noutras aplicações 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.