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

VBA Access Discussion :

Ouverture formulaire avec zone liste


Sujet :

VBA Access

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 30
    Points : 15
    Points
    15
    Par défaut Ouverture formulaire avec zone liste
    Bonjour,

    J'ai écrit en VBA le code permettant l'ouverture d'un formulaire lié à la ligne selectionné de ma zone liste qui est le suivant :

    Private Sub lstResult_DblClick(Cancel As Integer)
    DoCmd.OpenForm "FormulaireMaintenance", acNormal, , "[ID_BRUKER] =" & Me.lstResult
    End Sub
    Malheureusement j'ai l'erreur : erreur de syntaxe (opérateur absent) dans l'expression << [ID_BRUKER] = >>

  2. #2
    Membre expérimenté Avatar de RobiPMS
    Homme Profil pro
    Conseiller psycho-pédagogique
    Inscrit en
    Octobre 2007
    Messages
    827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Conseiller psycho-pédagogique
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2007
    Messages : 827
    Points : 1 506
    Points
    1 506
    Par défaut
    Bonjour.
    Et comme ceci?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub lstResult_DblClick(Cancel As Integer)
    DoCmd.OpenForm "FormulaireMaintenance", acNormal, , "ID_BRUKER = '" & Me.lstResult & '"'
    End Sub
    Cordialement.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 30
    Points : 15
    Points
    15
    Par défaut
    Ton code reste rouge donc j'ai changé la fin comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub lstResult_DblClick(Cancel As Integer)
    DoCmd.OpenForm "FormulaireMaintenance", acNormal, , "ID_BRUKER = '" & Me.lstResult & "'"
    End Sub
    Mais ne marche toujours pas...

  4. #4
    Membre expérimenté Avatar de RobiPMS
    Homme Profil pro
    Conseiller psycho-pédagogique
    Inscrit en
    Octobre 2007
    Messages
    827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Conseiller psycho-pédagogique
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2007
    Messages : 827
    Points : 1 506
    Points
    1 506
    Par défaut
    Désolé pour l'erreur : trop vite tapé!
    Mais ne marche toujours pas...
    Il y a un message d'erreur, ou bien le formulaire s'ouvre "vide"?

    Chez moi cette syntaxe fonctionne sans problème avec une zone de liste à une seule colonne. S'il y a plus d'une colonne, il faut faire référence à celle où se trouve l'info sur laquelle on cherche la correspondance
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    '" & Me!lstResult.Column(1) & "'"
    Attention à la numérotation qui commence à 0 pour la première colonne.
    Sinon, je ne vois pas dans ce que tu communiques où peut être le problème...

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 30
    Points : 15
    Points
    15
    Par défaut
    Oui il y a plusieurs colonne dans ma zone de liste et le formulaire à ouvrir par contre contient encore plus d'informations.Le message d'erreur est toujours le même.

    Enfaite je m'explique : J'ai mis en place un formulaire de recherche multicritère qui donnent des résultats et donc en selectionnant la "machine" voulu par un double click cela devrait ouvrir le formulaire correspondant avec toutes les informations lié à cette machine .

    En pièce jointe j'ai mis mon formulaire de recherche ainsi que la fiche d'information de la machine.

    Cette base de donnée permettra l'utilisation d'une gestion de maintenance.


    EDIT : Je viens d'essayer ta proposition et il me dit " type de données incompatible dans l'expression du critère"
    Images attachées Images attachées   

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 30
    Points : 15
    Points
    15
    Par défaut
    Une aide ?

  7. #7
    Membre expérimenté Avatar de RobiPMS
    Homme Profil pro
    Conseiller psycho-pédagogique
    Inscrit en
    Octobre 2007
    Messages
    827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Conseiller psycho-pédagogique
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2007
    Messages : 827
    Points : 1 506
    Points
    1 506
    Par défaut
    Autant pour moi!
    Le champ sur lequel tu filtres est de type numérique. Donc la syntaxe doit être :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.OpenForm "FormulaireMaintenance", acNormal, , "ID_BRUKER =" & Me!lstResult.Column(3)
    avec, bien sûr le bon numéro de colonne : je ne sais pas si c'est 3 ou 4 dans ton cas : il peut y avoir une colonne de taille 0 pas visible.
    J'espère que cette fois, ça ira!

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 30
    Points : 15
    Points
    15
    Par défaut
    Ca marche nickel !

    Je te remercie !

    par contre dernière chose : comment faire ouvrir mon formulaire en mode fenetre dialogue. Cela permet de mieux refermer.

  9. #9
    Membre expérimenté Avatar de RobiPMS
    Homme Profil pro
    Conseiller psycho-pédagogique
    Inscrit en
    Octobre 2007
    Messages
    827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Conseiller psycho-pédagogique
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2007
    Messages : 827
    Points : 1 506
    Points
    1 506
    Par défaut
    Content d'avoir pu aider!
    Pour ouvrir en mode fenêtre dialogue :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.OpenForm "FormulaireMaintenance", acNormal, , "ID_BRUKER =" & Me!lstResult.Column(x), , acDialog
    Cdlt.
    Ps : pense à taguer "Résolu". Merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2010] Probleme ouverture formulaire avec zone de liste
    Par caje17 dans le forum Access
    Réponses: 11
    Dernier message: 31/03/2015, 17h07
  2. [LibreOffice][Base de données] Formulaire avec zone de liste
    Par jeanphi45 dans le forum OpenOffice & LibreOffice
    Réponses: 4
    Dernier message: 23/01/2014, 16h40
  3. Formulaire avec zone de liste
    Par missval dans le forum IHM
    Réponses: 4
    Dernier message: 26/06/2009, 12h25
  4. ouverture formulaire sur zone de liste
    Par santacrus dans le forum IHM
    Réponses: 2
    Dernier message: 09/02/2008, 16h41
  5. Sous formulaire avec zone de liste modifiable
    Par Krakotte dans le forum IHM
    Réponses: 7
    Dernier message: 20/01/2006, 10h21

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