OpenArgs, propriété

S’applique à
Access pour Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

S’applique à

Objet Form
Objet Report

Détermine l’expression de chaîne spécifiée par l’argument OpenArgs de la méthode OpenForm qui a ouvert un formulaire. Variant en lecture/écriture.

expression.ArgOuverture

Expression Obligatoire. Expression qui renvoie l’un des objets de la liste S’applique à.

Remarques

Cette propriété est disponible uniquement à l’aide d’une macro ou en utilisant du code Visual Basic pour Applications (VBA) avec la méthode OpenForm de l’objet DoCmd . Cette définition de propriété est en lecture seule dans tous les modes.

Pour utiliser la propriété OpenArgs , ouvrez un formulaire à l’aide de la méthode OpenForm de l’objet DoCmd et définissez l’argument OpenArgs sur l’expression de chaîne souhaitée. Le paramètre de propriété OpenArgs peut ensuite être utilisé dans le code du formulaire, par exemple dans une procédure événementielle Open. Vous pouvez également faire référence au paramètre de propriété dans une macro, telle qu’une macro Open, ou à une expression, telle qu’une expression qui définit la propriété ControlSource pour un contrôle sur le formulaire.

Par exemple, supposons que le formulaire que vous ouvrez est une liste de clients de type formulaire continu. Si vous souhaitez que le focus soit déplacé vers un enregistrement client spécifique lorsque le formulaire s’ouvre, vous pouvez définir la propriété OpenArgs sur le nom du client, puis utiliser l’action RechercherEnregistrer dans une macro Ouvrir pour déplacer le focus sur l’enregistrement du client portant le nom spécifié.

Exemple

L’exemple suivant utilise la propriété ArgOuverture pour ouvrir le formulaire Employees (Employés) sur l’enregistrement d’un employé spécifique, et montre comment la méthode OuvrirFormulaire définit la propriété ArgOuverture. Vous pouvez exécuter cette procédure de façon appropriée, par exemple, lorsque l’événement AprèsMAJ se produit pour une boîte de dialogue personnalisée pour l’entrée de nouvelles informations sur un employé.

Sub OpenToCallahan()
    DoCmd.OpenForm "Employees", acNormal, , , _
        acReadOnly, , "Callahan"
End Sub
Sub Form_Open(Cancel As Integer)
    Dim strEmployeeName As String
    ' If OpenArgs property contains employee name, find
    ' corresponding employee record and display it on 
    ' form. For example,if the OpenArgs property 
    ' contains "Callahan", move to first "Callahan" 
    ' record.
    strEmployeeName = Forms!Employees.OpenArgs
    If Len(strEmployeeName) > 0 Then
        DoCmd.GoToControl "LastName"
        DoCmd.FindRecord strEmployeeName, , True, , _
           True, , True
    End If
End Sub

L’exemple suivant utilise la méthode FindFirst pour rechercher l’employé nommé dans la propriété ArgOuverture.

Private Sub Form_Open(Cancel As Integer)
    If Not IsNull(Me.OpenArgs) Then
        Dim strEmployeeName As String
        strEmployeeName = Me.OpenArgs
        Dim RS As DAO.Recordset
        Set RS = Me.RecordsetClone
        RS.FindFirst "LastName = '" & _
            strEmployeeName & "'"
        If Not RS.NoMatch Then
            Me.Bookmark = RS.Bookmark
        End If
    End If
End Sub