Share via


Propriété Form.OpenArgs (Access)

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.

Syntaxe

expression. OpenArgs

expressionVariable qui représente un objetForm.

Remarques

Cette propriété est disponible uniquement à l’aide d’une macro ou de Visual Basic avec la méthode OpenForm de l’objet DoCmd . Le paramètre de cette propriété n'est accessible qu'en lecture, quel que soit le mode.

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 du code pour le formulaire, comme dans une procédure d'événement Open. Vous pouvez également faire référence au paramètre de propriété dans une macro, comme une macro Open, ou une expression, comme une expression qui définit la propriété ControlSource pour un contrôle sur le formulaire.

Supposons, par exemple, que le formulaire que vous ouvrez soit une liste de clients affichée en continu. Si vous souhaitez que l’enregistrement d’un client particulier devienne actif à l’ouverture du formulaire, vous pouvez définir le nom du client comme valeur de la propriété OpenArgs et utiliser l’action FindRecord dans une macro Ouverture pour activer l’enregistrement dont vous avez spécifié le nom de client.

Exemple

L’exemple suivant utilise la propriété OpenArgs pour ouvrir le formulaire Employés à un enregistrement employé spécifique et montre comment la méthode OpenForm définit la propriété OpenArgs . Vous pouvez exécuter cette procédure comme il convient . par exemple, lorsque l’événement AfterUpdate se produit pour une boîte de dialogue personnalisée utilisée pour entrer 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 montre comment utiliser la propriété OpenArgs pour empêcher l’ouverture d’un formulaire depuis le volet de navigation.

Private Sub Form_Open(Cancel As Integer)

If Me.OpenArgs() <> "Valid User" Then
    MsgBox "You are not authorized to use this form!", _
        vbExclamation + vbOKOnly, "Invalid Access"
    Cancel = True
End If
End Sub

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.