Partager via


Fonction de commande

Renvoie la partie argument de la ligne de commande utilisée pour lancer Microsoft Visual Basic ou un programme exécutable développé avec Visual Basic. La fonction Visual Basic Command est disponible dans Microsoft Access, mais pas dans d’autres applications Microsoft Office.

Syntaxe

Commande

Remarques

Lorsque Visual Basic est lancé à partir de la ligne de commande, toute partie de la ligne de commande qui suit /cmd est passée au programme en tant qu’argument de ligne de commande. Dans l’exemple de ligne de commande suivant, cmdlineargs représente les informations d’argument retournées par la fonction Command .

VB /cmd cmdlineargs

Pour les applications développées dans Visual Basic et compilées dans un fichier .exe, Command renvoie les arguments affichés après le nom de l'application sur la ligne de commande. Par exemple :

MyApp cmdlineargs

Pour savoir comment les arguments de ligne de commande peuvent être modifiés dans l’interface utilisateur de l’application que vous utilisez, recherchez « arguments de ligne de commande » dans l’aide.

Exemple

Cet exemple utilise la fonction Command pour obtenir les arguments de ligne de commande dans une fonction qui les renvoie dans un Variant contenant un tableau. Disponible dans Microsoft Access, mais pas dans d’autres applications 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

Voir aussi

Assistance et commentaires

Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.