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

Macros et VBA Excel Discussion :

Liaison de 2 userforms


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Employé
    Inscrit en
    Mai 2017
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Employé

    Informations forums :
    Inscription : Mai 2017
    Messages : 37
    Par défaut Liaison de 2 userforms
    Bonjour,

    Je souhaite à partir d'un premier formulaire en ouvrir un second et y envoyer une donnée du premier (un prénom sélectionné dans une combobox). Jusque là, tout est bon, ça fonctionne.
    Mais lorsqu'à partir de cette donnée envoyée, je l'utilise pour en trouver une autre (le nom associé) avec la commande VLookup dans un tableau excel, ça ne fonctionne plus, le second formulaire ne s'ouvre plus... Je ne comprend pas...

    En PJ un fichier vite fait avec tout ce qu'il faut, en supprimant la commande VLookup, ça fonctionne.

    Si quelqu'un arrive à m'expliquer ce qui ne va pas...

    Merci beaucoup
    Fichiers attachés Fichiers attachés

  2. #2
    Membre Expert
    Femme Profil pro
    Ingénieur
    Inscrit en
    Octobre 2016
    Messages
    1 706
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 30
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2016
    Messages : 1 706
    Par défaut
    Bonjour,
    Conformément aux règles du forum, ne joints pas de fichier, mais écrit le code en question. Dis-nous où tu bloques sur ton code et donne-nous les éventuels messages d'erreurs et leurs localisations dans le code. Si nécessaire, tu peux joindre des captures d'écrans.
    Quand tu écris ton code, n'oublie pas de le mettre entre balises (bouton #) pour une meilleure lisibilité.
    A bientôt avec plus de précisions

  3. #3
    Membre émérite
    Homme Profil pro
    Responsable des études(en disponibilité)
    Inscrit en
    Juin 2007
    Messages
    367
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable des études(en disponibilité)
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 367
    Par défaut
    dans ton code la variable base est vide

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.LblNom = Application.WorksheetFunction.VLookup(Base, Sheets("Main").Range("A1:B" & Line1), 2, 0)

    En remplaçant base par UserForm1.cbbNom.Value chez moi ça fonctionne.





    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.LblNom = Application.WorksheetFunction.VLookup(UserForm1.cbbNom.Value, Sheets("Main").Range("A1:B" & Line1), 2, 0)
    Bonne journée.

  4. #4
    Membre averti
    Homme Profil pro
    Employé
    Inscrit en
    Mai 2017
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Employé

    Informations forums :
    Inscription : Mai 2017
    Messages : 37
    Par défaut
    Effectivement, en recherchant directement la donnée de mon premier formulaire sans la définir dans une nouvelle variable sur mon second, cela fonctionne... je ne comprend pas ce que cela change... Merci a_diard

    J'attend un peu avant de marquer le sujet comme résolu, si quelqu'un peux m'expliquer le pourquoi du comment...

    Merci beaucoup

    Et désolé pour les entorses aux règles du forum... je ferais bien plus attention maintenant.

  5. #5
    Membre émérite
    Homme Profil pro
    Responsable des études(en disponibilité)
    Inscrit en
    Juin 2007
    Messages
    367
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable des études(en disponibilité)
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 367
    Par défaut
    je n'ai pas vu ou et comment tu renseigne ta variable

    vérifie son contenu avec l'espion

    au moment du vlookup ta variable n'a pas la bonne valeur ou le bon format.

    bonne soirée.

  6. #6
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    bonsoir
    si ta variable est instancié dans l'usf 1 il es normal qu'elle soit vide dans l'usf2
    il faut que tu la dim dans un module standard et en public
    ytu a cela dans la FAQ concernant la "porté des variables"
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  7. #7
    Expert confirmé

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 169
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    les propositions de a_diard et Patrick sont toutes les deux correctes
    la meilleur (voir impérative) dépendra :

    - de l'état (chargé ou non) de Userform1
    - de la durée de conservation totale souhaitée de cette variable, est-ce qu'on "passe" simplement la valeur à Userform2 ou est-ce qu'on "stocke" pour réutilisation multiples ?

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

Discussions similaires

  1. [XL-2007] Problème Méthode de Liaison entre Userform
    Par Garruth dans le forum Excel
    Réponses: 4
    Dernier message: 05/03/2012, 15h22
  2. [XL-2000] Liaison entre deux Userform
    Par cobra38 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 20/05/2010, 19h41
  3. userform dans word avec liaison Excel
    Par novic dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 24/01/2010, 08h21
  4. Liaisons USerForm - Feuille de calcul
    Par rimked dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 26/01/2008, 01h33
  5. [VBA-E] Liaison entre une listbox et un userform
    Par lio62 dans le forum Macros et VBA Excel
    Réponses: 15
    Dernier message: 25/02/2007, 18h32

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