VBA Access 2003 problème de variable

Bonjour,

Débutant en VBA Access 2003 je bute sur un problème qui je pense est simple mais je ne trouve pas la réponse dans les aides.
Le code suivant ne m'ouvre qu'une fiche vide, par contre si j'écris directement le nom dans l'objet ça marche !
On ne peut donc pas utiliser la variable string ?

Private Sub Ouvrir_fiches_Click()

Dim stAffichage As String
Dim stClient As String

stClient = "Durand"
stAffichage = "Affichage fiche"

DoCmd.OpenForm stAffichage, , , "Nom = 'stClient'"

End Sub

Merci d'une réponse qui m'encouragerait à continuer

9 réponses

  1. Bonjour f894009,

    Merci beaucoup, ça marche en effet
    Quand je pense aux heures que j'ai passé sur cette formule !

    Bon dimanche
    1. Bonjour,

      Le code ci-dessous a été écrit par l'assistant bouton de commande-
      opération sur formulaire
      ouverture formulaire
      Choix du formulaire
      affichage info spécifiques
      etc....

      Texte8 est la zone de texte qui est renseignée pour l'info sélectionnée dans le formulaire de départ où vous avez mis le bouton Ouvrir_Fiches.

      Private Sub Ouvrir_Fiches_Click()
      On Error GoTo Err_Ouvrir_Fiches_Click

      Dim stDocName As String
      Dim stLinkCriteria As String

      stDocName = "Affichage fiche"

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

      Exit_Ouvrir_Fiches_Click:
      Exit Sub

      Err_Ouvrir_Fiches_Click:
      MsgBox Err.Description
      Resume Exit_Ouvrir_Fiches_Click

      End Sub

      Et ça marche. Vous avez peut-être un problème à la création de vos formulaires.

      A suivre
      1. Bonjour,

        Le code ci-dessous a été écrit par l'assistant bouton de commande-
        opération sur formulaire
        ouverture formulaire
        Choix du formulaire
        affichage info spécifiques
        etc....

        Texte8 est la zone de texte qui est renseignée pour l'info sélectionnée dans le formulaire de départ où vous avez mis le bouton Ouvrir_Fiches.

        Private Sub Ouvrir_Fiches_Click()
        On Error GoTo Err_Ouvrir_Fiches_Click

        Dim stDocName As String
        Dim stLinkCriteria As String

        stDocName = "Affichage fiche"

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

        Exit_Ouvrir_Fiches_Click:
        Exit Sub

        Err_Ouvrir_Fiches_Click:
        MsgBox Err.Description
        Resume Exit_Ouvrir_Fiches_Click

        End Sub

        Et ça marche. Vous avez peut-être un problème à la création de vos formulaires.

        A suivre
        1. Bonjour,

          Le code ci-dessous a été écrit par l'assistant bouton de commande-
          opération sur formulaire
          ouverture formulaire
          Choix du formulaire
          affichage info spécifiques
          etc....

          Texte8 est la zone de texte qui est renseignée pour l'info sélectionnée dans le formulaire de départ où vous avez mis le bouton Ouvrir_Fiches.

          Private Sub Ouvrir_Fiches_Click()
          On Error GoTo Err_Ouvrir_Fiches_Click

          Dim stDocName As String
          Dim stLinkCriteria As String

          stDocName = "Affichage fiche"

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

          Exit_Ouvrir_Fiches_Click:
          Exit Sub

          Err_Ouvrir_Fiches_Click:
          MsgBox Err.Description
          Resume Exit_Ouvrir_Fiches_Click

          End Sub

          Et ça marche. Vous avez peut-être un problème à la création de vos formulaires.

          A suivre
          1. Bonjour,

            Le code ci-dessous a été écrit par l'assistant bouton de commande-
            opération sur formulaire
            ouverture formulaire
            Choix du formulaire
            affichage info spécifiques
            etc....

            Texte8 est la zone de texte qui est renseignée pour l'info sélectionnée dans le formulaire de départ où vous avez mis le bouton Ouvrir_Fiches.

            Private Sub Ouvrir_Fiches_Click()
            On Error GoTo Err_Ouvrir_Fiches_Click

            Dim stDocName As String
            Dim stLinkCriteria As String

            stDocName = "Affichage fiche"

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

            Exit_Ouvrir_Fiches_Click:
            Exit Sub

            Err_Ouvrir_Fiches_Click:
            MsgBox Err.Description
            Resume Exit_Ouvrir_Fiches_Click

            End Sub

            Et ça marche. Vous avez peut-être un problème à la création de vos formulaires.

            A suivre
            1. Bonjour et merci f894009,
              J'ai l'impression d'être maudit car

              Private Sub Ouvrir_fiches_Click()

              Dim stAffichage As String
              Dim stClient As String

              stClient = "Durand"
              stAffichage = "Affichage fiche"

              DoCmd.OpenForm stAffichage, , , "Nom =" & " ' " & stClient & " ' "

              End Sub

              donne également l'ouverture d'une fiche vide !
              1. Bonjour,

                DoCmd.OpenForm stAffichage, , , "Nom =" & " ' " & stClient & " ' "

                A suivre
                1. Bonsoir Polux31,

                  Merci pour cette réponse rapide à mon petit problème.
                  J'ai cependant un souci, la formule que tu me soumets donne le même résultat, c'est à dire l'appel d'une fiche vierge !

                  C'est : DoCmd.OpenForm stAffichage, , , "Nom = ' " & stClient & " ' "

                  Il semble que cette variable string ne soit pas reconnue

                  Bonne soirée
                  Jean Pierre 99
                  1. Bonjour,

                    On ne peut donc pas utiliser la variable string ?


                    Bien heureusement que oui ... mais il faut bien l'intégrer dans la chaîne. Pas toujours évident pour un débutant, mais qui devient vite un automatisme avec la pratique.

                    DoCmd.OpenForm stAffichage, , , "Nom = ' " & stClient & " ' "

                    ;o)