IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

ouverture d'un formulaire a un record par un autre formulaire


Sujet :

Access

  1. #1
    Membre à l'essai
    Inscrit en
    Juillet 2006
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 43
    Points : 24
    Points
    24
    Par défaut ouverture d'un formulaire a un record par un autre formulaire
    Salut,

    J'ai bien vu la FAQ et les autres soluces du forum, et j'ai faitce qui me parrait etre bon, a savoir j'ai un form A et B. Sur le form A quand je clique sur un bouton, je souhaite qu'il ouvre le form B mais sur le record correspondant aux données du form A. Si sur le form A la valeur est 32 je souhaite qu'il ouvre le form B sur 32.

    Voici donc mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub Cmd_voir_Click()
     
    ouverture = devis![CODEDEVIS]
     
    DoCmd.Close acForm, Me.Name
    DoCmd.OpenForm "F_CE", , , Forms![F_CE].[DEVIS.CODEDEVIS] = ouverture, acFormEdit
    end sub

    ben ca marche pas!! si vous pouviez m'éclairez, en fait je pense que

  2. #2
    Membre régulier
    Inscrit en
    Août 2006
    Messages
    82
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 82
    Points : 81
    Points
    81
    Par défaut
    Ne ferme pas ton premier formulaire, pour qu'access retrouve la valeur il faut que ton formulaire soit toujours ouvert.

    retire ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.Close acForm, Me.Name

  3. #3
    Membre à l'essai
    Inscrit en
    Juillet 2006
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 43
    Points : 24
    Points
    24
    Par défaut
    J'ai oublié de dire mais j'ai un message d'erreur 91 qui apparait, et quand je debug 'ouverture' possede bien la bonne valeur, je pensais qu'en l'affectant avant il gardait la valeur.
    J'ai mis la fermeture a la fin du code, ca ouvre le formulaire, mais ca me positionne pas la ou je veux.
    merci pour la reponse

  4. #4
    Membre régulier
    Inscrit en
    Août 2006
    Messages
    82
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 82
    Points : 81
    Points
    81
    Par défaut
    Je sais pas lequel c'est le message d'erreur 91
    Sinon, si tu met ton close aprés l'ouverture de ton formulaire, il va te fermer le nouveau.
    Ensuite, tu as la bonne valeur donc ?
    Il te suffit de gerer les autres valeurs c'est bien ça ?

  5. #5
    Membre à l'essai
    Inscrit en
    Juillet 2006
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 43
    Points : 24
    Points
    24
    Par défaut
    en fait le form B s'ouvre mais pas sur le recordset que je souhaite!
    d'ou mon probleme

    edit: erreur '91':

    Variable objet ou variable de bloc with non definie

  6. #6
    Futur Membre du Club
    Inscrit en
    Août 2006
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 17
    Points : 9
    Points
    9
    Par défaut
    Bonjour,

    As tu un champ unique qui te permet de faire la liaison entre les deux formulaires? ( un identifiant par exemple). Si c'est le cas il faut que tu remplace
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.OpenForm "F_CE", , , Forms![F_CE].[DEVIS.CODEDEVIS] = ouverture, acFormEdit
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Dim stLinkCriteria As String
        stDocName = "F_CE"
        stLinkCriteria = "[Identifiant]=" & "'" & Me![Identifiant] & "'"
        DoCmd.OpenForm stDocName, , , stLinkCriteria
    ++

  7. #7
    Futur Membre du Club
    Inscrit en
    Août 2006
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 17
    Points : 9
    Points
    9
    Par défaut
    J'ai oublié dans le code au début

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim stDocName as string

  8. #8
    Membre à l'essai
    Inscrit en
    Juillet 2006
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 43
    Points : 24
    Points
    24
    Par défaut
    Ah! marche pas!!

    en utilisant ce code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Dim stDocName As String
    Dim stLinkCriteria As String
    ouverture = devis![NUMDEVIS]
     
        stDocName = "F_CE"
        stLinkCriteria = "[DEVIS.NUMDEVIS]=" & "'" & ouverture & "'"
        DoCmd.OpenForm stDocName, , , stLinkCriteria
    End Sub
    j'ai mis 'ouverture' parce que sinon il ne trouvais le '[NUMDEVIS]

    et ben ca m'ouvre l'autre form mais toujours pas sur l'enregistrement que je veux! Il ouvre sur le premier enregistrement!
    si vous aviez d'autres idees?

  9. #9
    Membre régulier
    Inscrit en
    Août 2006
    Messages
    82
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 82
    Points : 81
    Points
    81
    Par défaut
    Si tu recupere la donnée dans ton code.
    Moi je fais comme cela :

    Dans le formulaire formConsult:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.OpenForm "formModifBis"
    Et dans le fromModifBis:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub Form_Open(Cancel As Integer)
     
        Dim vRs As Recordset
     
                Set vRs = CurrentDb.OpenRecordset("Select * from PosteTechnique where pTNom = '" & _
                    Forms![formConsult]![lstVisu] & "'")
     
    End Sub
    Par contre, cela implique que ton formulaire sera toujours ouvert grace à l'autre.

  10. #10
    Futur Membre du Club
    Inscrit en
    Août 2006
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 17
    Points : 9
    Points
    9
    Par défaut
    Ton identifiant "[DEVIS.NUMDEVIS]" est de quel type? (numérique ou alpha-numérique?).

Discussions similaires

  1. Réponses: 1
    Dernier message: 26/06/2007, 20h39
  2. Réponses: 5
    Dernier message: 15/06/2007, 13h26
  3. actualisation d'un formulaire par un autre formulaire
    Par froutloops62 dans le forum IHM
    Réponses: 3
    Dernier message: 15/12/2006, 15h54
  4. Réponses: 4
    Dernier message: 31/07/2006, 09h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo