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 :

plusieurs classeurs dans un dossier [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Homme Profil pro
    sécurité
    Inscrit en
    Septembre 2012
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Hérault (Languedoc Roussillon)

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

    Informations forums :
    Inscription : Septembre 2012
    Messages : 197
    Par défaut plusieurs classeurs dans un dossier
    Bonjour le forum

    Je reviens vers vous pour de l'aide et quelques conseils.

    J'ai créé un dossier avec plusieurs classeurs dedans, par ex
    Classeur 1 (principal)
    Classeur 2
    Classeur 3
    Classeur 4
    ect... cela peut être évolutif.

    Il y a un classeur principal (classeur1) avec un UF composé de plusieurs boutons correspondant à chaque classeur (bouton1 = classeur2; bouton2 = classeur3; ect...) les classeurs peuvent contenir ou pas des UF.

    Mon idée serait qu'avec chaque bouton on puisse ouvrir le fichier si celui ci de contient pas de UF sinon ouvrir simplement le UF afin de le compléter et renseigner le classeur sans l'ouvrir.

    j'aimerai s'avoir tout cela est possible et comment le faire ?

    Merci à vous.

  2. #2
    Membre éprouvé
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Septembre 2011
    Messages
    112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2011
    Messages : 112
    Par défaut
    Bonjour,

    Je ne pense pas que celà soit possible. Par contre tu dois pouvoir ouvrir un classeur en le laissant invisible et exécuter une macro pour afficher tes UF.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    'ouvrir un classeur invisible
    application.screenupdating = false
    workbooks.open "nom.xlam" 
    ActiveWindow.Visible = false
    application.screenupdating = true
     
    'executer une macro dans un autre classeur
    application.run "nomclasseur.xlam!Macro"

  3. #3
    Membre confirmé
    Homme Profil pro
    sécurité
    Inscrit en
    Septembre 2012
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Hérault (Languedoc Roussillon)

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

    Informations forums :
    Inscription : Septembre 2012
    Messages : 197
    Par défaut
    Bonjour letienne

    Merci d'être arrêté sur mon post.

    je viens de faire un essai avec 2 ou 3 classeurs bidons a de tester ta proposition, mais ça ne marche pas et suis pas certain d'avoir fait correctement.
    mon classeur ou se trouve mon UF avec les bouton afin d'ouvrir les autre classeur ou UF s'appel classeur Principal et le classeur que j'essai d'ouvrir (plus tot UF) s'appel soleil.

    Mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Sub CommandButton1_Click()
    'ouvrir un classeur invisible
    Application.ScreenUpdating = False
    Workbooks.Open "Soleil.xlsm"
    ActiveWindow.Visible = False
    Application.ScreenUpdating = True
     
    'executer une macro dans un autre classeur
    Application.Run "Soleil.xlsm!UserForm1.Show"
    End Sub
    dit moi si je part bien déjà.

    Merci

  4. #4
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut


    Bonjour,

    logiquement tenter plutôt ActiveWorbook.UserForm1.Show


    ______________________________________________________________________________________________________

    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion …

    ______________________________________________________________________________________________________
    Je suis Charlie, Bardo, Sousse

  5. #5
    Membre confirmé
    Homme Profil pro
    sécurité
    Inscrit en
    Septembre 2012
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Hérault (Languedoc Roussillon)

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

    Informations forums :
    Inscription : Septembre 2012
    Messages : 197
    Par défaut
    Bonjour Marc-L

    Merci à toi également de bien vouloir m'aider.

    Ta proposition, je la mets à la place de quoi ?

    j'ai tenté à la place de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Workbooks.Open "Soleil.xlsm"
    mais ça bug toujours sur cette ligne ou ta proposition si j'enlève Workbooks.Open

    Merci

  6. #6
    Membre éprouvé
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Septembre 2011
    Messages
    112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2011
    Messages : 112
    Par défaut
    Application.run sert à executer une sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    'Classeur invisible
    sub afficherUF()
     UserForm1.show
    end sub
    'Classeur maitre
    sub execAutreClasseur()
      application.run "ClasseurInvisible.xlam!afficherUF"
    end sub
    Autrement la méthode de Marc-L fonctionne bien aussi.
    mais attention avec activeworkbook.

  7. #7
    Membre confirmé
    Homme Profil pro
    sécurité
    Inscrit en
    Septembre 2012
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Hérault (Languedoc Roussillon)

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

    Informations forums :
    Inscription : Septembre 2012
    Messages : 197
    Par défaut
    Re

    Désolé mais je suis un peu perdu dans la mise en place.
    je ne vois plus ou faut mettre tout cela.

    Si comprend bien mon classeur maitre est pour moi classeur "principal"
    et le Non visible est classeur "Soleil"

    il faut une partie du code dans chaque classeur ?

    vraiment désolé pour la compréhension.

  8. #8
    Membre éprouvé
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Septembre 2011
    Messages
    112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2011
    Messages : 112
    Par défaut
    Tiens voici un exemple Un classeur Principal qui commande 3 classeurs situés dans le même dossier.
    Il faut activer les macros dans chaque classeur avant de tester sinon ça risque de bloquer le code.
    Autrement je pense que c'est plus propre et plus simple de mettre tes User Form dans ton classeur Principal plutôt que dans les autres, et ne pas t'embêter avec cette histoire de rendre les classeurs invisibles en utilisant la méthode expliquée par SilkyRoad : http://silkyroad.developpez.com/VBA/ClasseursFermes/

    Bon courage.
    Etienne
    Fichiers attachés Fichiers attachés

  9. #9
    Membre confirmé
    Homme Profil pro
    sécurité
    Inscrit en
    Septembre 2012
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Hérault (Languedoc Roussillon)

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

    Informations forums :
    Inscription : Septembre 2012
    Messages : 197
    Par défaut
    Bonjour letienne

    Excuse de mon absence et donc ma réponse tardive mais boulot oblige.

    Merci pour ton retour avec un exemple que je vais essayer d'ouvrir car j'ai un souci pour ouvrir les zip, comprend pas pourquoi car cela fonctionnait jusque la.

    Merci encore et reviens te dire des que possible.

    Cdlt.

  10. #10
    Membre confirmé
    Homme Profil pro
    sécurité
    Inscrit en
    Septembre 2012
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Hérault (Languedoc Roussillon)

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

    Informations forums :
    Inscription : Septembre 2012
    Messages : 197
    Par défaut
    Bonjour letienne

    Comme promis je reviens te dire ce qu'il en ai. Je suis arrivé à ouvrir ton exemple, après quelques essais c'est vrai que cela va vite devenir compliqué, donc je vais étudier ta 2ème proposition qui est de regrouper les UF sur le classeur principal.

    Merci pour tout

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

Discussions similaires

  1. [XL-2007] Plusieurs classeurs dans un dossier
    Par Pompaero dans le forum Excel
    Réponses: 0
    Dernier message: 06/11/2015, 15h34
  2. backup de plusieurs bases dans un dossier
    Par a.sana dans le forum C#
    Réponses: 0
    Dernier message: 25/05/2009, 14h30
  3. [C#2005]Excel2003 copier plusieurs classeurs dans un seul
    Par Herlece dans le forum Windows Forms
    Réponses: 2
    Dernier message: 25/08/2008, 21h12
  4. Copier plusieurs classeurs dans 1 seul
    Par iAlph dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 13/05/2008, 19h16
  5. [VBA-E]Liste des noms de classeur dans un dossier
    Par Lexot2 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 09/09/2006, 21h04

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