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 :

lancer un userform depuis un autre classeur


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Pilote
    Inscrit en
    Novembre 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Polynésie

    Informations professionnelles :
    Activité : Pilote
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2011
    Messages : 4
    Par défaut lancer un userform depuis un autre classeur
    Bonjour
    j'ai deux classeurs différents : CL1 et CL2
    dans CL1, j'ai déclaré en tête de module (exemple mod1) ==> Public Titre
    dans ce même classeur, j'ai un userform==>FormSaisie

    à partir d'une macro dans le classeur CL2,
    je voudrai mémoriser une variable dans CL1, par ex workbooks(CL1)!mod1.Titre=Test"
    puis lancer le userform FormSaisie, du genre FormSaisie.show

    j'ai tout essayé, cherché partout, rien ne fonctionne
    si une âme charitable peut m'éclairer la voie
    Merci d'avance

  2. #2
    Expert confirmé
    Homme Profil pro
    retraité
    Inscrit en
    Juin 2012
    Messages
    3 441
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : retraité
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Juin 2012
    Messages : 3 441
    Par défaut
    Bonjour,

    Un exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    '--- dans CL1.xlsm
    Public sTitre As String
     
    Sub ShowFormSaisie(sT As String)
        sTitre = sT
        FormSaisie.Show
    End Sub
     
    '--- dans CL2.xlsm
    Sub Open_CL1_FormSaisie()
        Dim wB1 As Workbook
        Set wB1 = Workbooks("CL1.xlsm")
        wB1.Activate
        Application.Run wB1.Name & "!ShowFormSaisie", "abc"
        Set wB1 = Nothing
    End Sub
    Cordialement.
    Fichiers attachés Fichiers attachés

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Pilote
    Inscrit en
    Novembre 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Polynésie

    Informations professionnelles :
    Activité : Pilote
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2011
    Messages : 4
    Par défaut c'est good
    Grand merci Eric
    je n'arrivais pas à mettre en forme le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Application.Run wB1.Name & "!ShowFormSaisie", "abc"
    et à priori, pas nécessaire de passer par wB1.Activate.
    cordialement et bonne semaine à vous

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

Discussions similaires

  1. [XL-2010] VBA - Ouverture d’un Userform depuis un autre classeur
    Par Guillaume56 dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 07/07/2015, 18h39
  2. userform - lancer une macro à partir du userform d'un autre classeur
    Par Iichham dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 28/07/2011, 10h05
  3. [VBA-E]PB lancer une macro d'une autre classeur
    Par rond24 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 19/07/2006, 19h12
  4. Réponses: 5
    Dernier message: 06/07/2006, 11h02
  5. [VBA-E] executer code d'un userform depuis un autre
    Par zouille dans le forum Macros et VBA Excel
    Réponses: 16
    Dernier message: 03/04/2006, 20h35

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