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 :

execution automatique macro


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 855
    Par défaut execution automatique macro
    Bonjour,

    J'essaye de faire exécuter automatiquement (=à l'ouverture du classeur) une macro.

    Je sais que je dois utiliser
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Option explicit
    private sub
     et byval
    , mais je n'arrive pas à les mettre dans l'ordre.....une petite aide ?

    Merci,
    A+

  2. #2
    Membre Expert Avatar de Krovax
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 888
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 888
    Par défaut
    Bonjour,
    Ca ne fait que 6 combinaisons a tester. Mais quelques explications semblent necessaire.
    Option explicit n'a rien a voir c'est une option a mettre en première ligne d'un module. Qui permet de dire que dans ce module toutes les variable doivent être déclaré.

    Private sub c'est un début mais faut metre un truc a coté.
    Byval c'est utilisé pour passer les variable en argument.

    En gros en l'état aucune de c'est 3 ligne ne permettra de lancer la macro a l'ouverture du classeur.

    De la lecture :
    Les évènements du module objet ThisWorkbook
    A toi de trouver le bon évènement

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 855
    Par défaut
    Merci Krovax,

    En fait, même en relisant, je n'ai pas tout compris dans le tuto :

    Pour l'instant j'ai le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    private sub workbook_open()
    msgBox "Salut   "& environ("Username") & "Lancement de la mise à jour ? "
    Application.run ("'Miseajour'")
    end sub
    La macro "Miseajour" étant dans un module.
    Je l'ai mise dans le "thisworkbook", et j'avais mis pensant que ça allait marcher....je ne comprends pas pourquoi elle ne se lance pas automatiquement à l'ouverture du classeur....????

    Merci,
    A+

  4. #4
    Membre Expert Avatar de Krovax
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 888
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 888
    Par défaut
    Bonjour,
    restont simple
    garde ta macro dans un module
    mais une chose
    le nom de ta macro est :
    miseajour_open
    pas seulement
    Miseajour

    Mais laisse au moi a l'utilisateur la possibilité de dire non. Car la je te trouve liberticide pour utiliser de grand mot

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    private sub workbook_open()
    select case msgBox ("Salut   "& environ("Username") & "Lancement de la mise à jour ? ",vbyesno)
    case vbyes
    miseajour_open
    case vbno
    msgbox "Bon ben pas de MAJ."
    end select
    end sub
    end sub

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 855
    Par défaut
    Merci Krovax,

    mes utilisateurs sont tellement "chevronnés" qu'ils font les additions dans les cellules Excel, sans utiliser les formules....donc, j'essaye de leur faciliter la vie....Même si je te rejoins dans ton adage, en ajoutant : "Ne donne pas un poisson à un pêcheur, apprends-lui à pêcher" (c'est pas de moi, mais de Mao si ma mémoire est bonne....). D'où ma volonté d'exécution automatique à l'ouverture du classeur de la macro "Miseajour"

    Par contre merci pour le code , je ne connaissais pas et vais pouvoir le réutiliser....

    Je continue mes recherches sur l'ouverture automatique...


    Merci,

    A+

  6. #6
    Membre Expert Avatar de Krovax
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 888
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 888
    Par défaut
    Si tu ne veux pas laisser le choi a lutilisateur ne lui laisse pazs de non a cliué signale juste quil va y avoir une mise a jour

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    msgBox "Salut   "& environ("Username") & chr(13) & "Lancement de la mise à jour!"
    miseajour_open
    mais laisser le oui/non et ne pas laisser le choix n'est pas cohérent du tout. enfin pense en

  7. #7
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 855
    Par défaut
    Merci Krovax,

    J'ai compris :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    private sub workbook_open()
     
    miseajour_open
     
    end sub
    en mettant ma macro en _open

    Tout fonctionne !!!!

    Merci pour ton aide,

    A+ pour de prochaines aventures......

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

Discussions similaires

  1. Macro qui s'execute automatiquement!
    Par Boonichou dans le forum Macros et VBA Excel
    Réponses: 17
    Dernier message: 28/07/2007, 19h35
  2. [VBA-E]Execution automatique macro
    Par dev81 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 06/06/2007, 09h35
  3. execution automatique macro
    Par ricoree78 dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 24/05/2007, 09h04
  4. [vba-E] VBA pour macro executable automatiquement
    Par ricachu dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 11/07/2006, 14h20
  5. [vba-E] pour une macro executable automatiquement
    Par ricachu dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 10/07/2006, 11h34

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