Access: Condition pour ouvrir Form

aur82 Messages postés 29 Statut Membre -  
LatelyGeek Messages postés 1774 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je suis toujours sur mon grand formulaire... Et voici mon problème:

Je souhaite ouvrir un formulaire différent selon que le répondant est une femme ou un homme. J'ai le code pour ouvrir le formulaire, mais je bogue avec les If:

Il faut aller chercher l'info dans la table_1, voici ce que j'ai pour l'instant :

Private Sub Ouvrir_Form6_Click()
On Error GoTo Err_Ouvrir_Form6_Click

If TABLE_1![SEX].Value = 2 Then
Dim stDocName As String
Dim stLinkCriteria As String

stDocName = "Formulaire6_Femmes"

stLinkCriteria = "[CPNBR]=" & "'" & Me![CPNBR] & "'"
DoCmd.OpenForm stDocName, , , stLinkCriteria

Else

stDocName = "Formulaire6_Femmes"

stLinkCriteria = "[CPNBR]=" & "'" & Me![CPNBR] & "'"
DoCmd.OpenForm stDocName, , , stLinkCriteria
stDocName = "Formulaire7_Résultats"

End If
DoCmd.Close acForm, "Formulaire5_Habitudes", acSaveYes

Exit_Ouvrir_Form6_Click:
Exit Sub

Err_Ouvrir_Form6_Click:
MsgBox Err.Description
Resume Exit_Ouvrir_Form6_Click

End Sub
Merci de votre aide,
Aur82
Configuration: Windows XP
Internet Explorer 6.0

2 réponses

  1. LatelyGeek Messages postés 1774 Date d'inscription   Statut Membre Dernière intervention   550
     
    Bonjour,

    j'ai modifié quelque peu ton module.

    Le premier test sert à déterminer quel formulaire tu ouvres, si je ne me trompe. J'ai donc mis ça juste au début:
    Private Sub Ouvrir_Form6_Click()
    Dim stDocName As String
    Dim stLinkCriteria As String

    If TABLE_1![SEX].Value = 2 Then
    stDocName = "Formulaire6_Femmes"
    Else
    stDocName = "Formulaire7_Résultats"
    End If

    Et ensuite, tu ouvres le formulaire qui a été choisi.
    stLinkCriteria = "[CPNBR]=" & "'" & Me![CPNBR] & "'"
    DoCmd.OpenForm stDocName, , , stLinkCriteria

    DoCmd.Close acForm, "Formulaire5_Habitudes", acSaveYes

    End Sub

    Le précédent ne fonctionnait pas parce que tu avais mis stDocName = "Formulaire7_Résultats" APR7S la demande d'ouverture du formulaire stDocName, et que tu avais laissé dans ton Else stDocName = "Formulaire6_Femmes". Donc je suppose que c'est ce formulaire Femmes qui s'ouvrait dans les deux cas...
    0
    1. aur82 Messages postés 29 Statut Membre
       
      Ah, LatelyGeek, mon sauveur!

      Ca marche, merci bcp!
      0
  2. LatelyGeek Messages postés 1774 Date d'inscription   Statut Membre Dernière intervention   550
     
    Arrête; je rougis!
    0