J'ai un formulaire pour saisir des enregistrements dans une table. Je voudrais qu'il s'ouvre sur un ajout vide (Nouveau) au lieu d'afficher le premier enregistrement de la table. À utiliser par un formulaire de navigation qui ouvre le formulaire de saisie à partir d'un bouton.
Vous pouvez utiliser acFormAdd
(valeur = 0) comme argument DataMode
facultatif pour OpenForm
. L'aide d'Access décrit acFormAdd
comme "L'utilisateur peut ajouter de nouveaux enregistrements mais ne peut pas modifier les enregistrements existants." Et en fait, non seulement cela empêche la modification des enregistrements existants, mais ils ne le sont pas même affiché dans le formulaire avec cette option.
DoCmd.OpenForm "frmaw_save",,,,acFormAdd
Si vous souhaitez toujours utiliser le formulaire de cette façon, vous pouvez définir sa propriété de saisie de données sur Yes
(sous l'onglet Données de la feuille de propriétés du formulaire).
Dans le Form_Load
event utilise la méthode GoToRecord
de DoCmd et passe acNewRec
pour le décalage.
Private Sub Form_Load()
DoCmd.GoToRecord , , acNewRec
End Sub
Dans la feuille de propriétés, définissez "Entrée de données" sur Oui. Vous pouvez également désactiver les boutons de navigation.