VBA Executer une macro a l'ouverture de excel [Résolu/Fermé]

Signaler
-
 Cyrille -
Salut,

J'essaye de mettre en place des outils d'aide à la décision dans mon entreprise en utilisant des formulaires VBA.

Je n'arrive pas à trouver la fonction suivante :

Code ou instruction qui affiche un formulaire dès l'ouverture du fichier excel.
Ou :
Code ou instruction qui exécute une MACRO dès l'ouverture d'un fichier excel.

Une idée ??

MERCI D'AVANCE
Stef

10 réponses

Messages postés
1842
Date d'inscription
mercredi 19 janvier 2005
Statut
Membre
Dernière intervention
9 juin 2020
1 354
Salut Stef,

Dans l'Explorateur de Projets VBA, juste sous la liste des feuilles de calcul, double clique sur "ThisWorkbook".
Dans la liste déroulante (Général), choisis Workbook (tu n'as pas d'autre choix). Par défaut, VBA te met un squelette de macro qui s'exécutera automatiquement à l'ouverture de ton classeur. Tu y mets ce que tu veux...
176
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 56965 internautes nous ont dit merci ce mois-ci

Messages postés
3
Date d'inscription
mardi 4 mai 2010
Statut
Membre
Dernière intervention
5 mai 2010

Effectivement, ça marche impec,
Je vois que ce poste est pas récent.
Ma problématique est de lancer une macro à chaque fermeture, pour assurer à chaque utilisateur de retomber à chaque fois sur le menu de départ? Est-ce que par hasard, il y a une astuce.
Après avoir fait ce qui est décrit ci dessus (workbook et génération de worbook_Open), il suffit de sélectionner dans la liste de droite (ou il doit y avoir écris Open) BeforeClose.
Messages postés
11
Date d'inscription
mardi 13 mars 2007
Statut
Membre
Dernière intervention
10 décembre 2015
1
Super, merci !
Quand même, ça s'invente pas d'aller mettre ça dans "this workbook" alors qu'avec les versions précédentes il fallait -ou on pouvait- le mettre dans un "module"...
Messages postés
11
Date d'inscription
mercredi 6 juillet 2016
Statut
Membre
Dernière intervention
11 août 2016

Merci pour ta réponse, elle est jusqu'à présent très très utile !!!
Nickel,

merci bien
Je me permet de donner quelques précisions ici : pour ma part, et il semble que je ne sois pas le seul, le code suivant, placé dans "ThisWorkbook", ne marche pas :

Sub Auto_Open()
MsgBox "Ca marche"
End Sub


La bonne solution, testée et fonctionnant réellement est :

 Private Sub Workbook_Open()
     MsgBox "Ca marche"
 End Sub


où ce code est placé également dans la feuille "ThisWorkbook".

Cordialement !
Messages postés
5121
Date d'inscription
mercredi 20 juillet 2005
Statut
Contributeur
Dernière intervention
6 mars 2019
2 675
Salut et merci c'est exactement ce que je cherchais.
Stef
oh bravooo
Vraiment merci !!!!
Cela fait une 1/2 journée que je cherchais le problème...suffisait de faire la macro en sélection this workbook !!!

encore merci de tout mon coeur...

Alexina

Utilise : Sub auto_open()

cela permet d'ouvrir ta macro a l'ouverture de excel
Messages postés
1
Date d'inscription
jeudi 18 octobre 2007
Statut
Membre
Dernière intervention
18 octobre 2007
5
Salut Stef

Voici un code qui peut t'aider
Mais à placer directement dans le module général ((outil/macro) car au début je l'avais placer dans le module d' une feuille qui contenait des boutons de commande et ca ne fonctionnait pas;


Sub Auto_Open() ' déclanchement à l'ouverture du classeur

Sheets("nm de la feuille").Select
+ instructions

A +
Dom
Messages postés
49
Date d'inscription
lundi 4 août 2008
Statut
Membre
Dernière intervention
10 mai 2011

salut,
je travaille sur excel en VB, et la que j'ai fini ma petit macro, je veux l'utiliser comme on .exe ;comme un programme...que je peux transmettre sur une autre machine par exp et l'utiliser.
je vs en prie qi vs pouvez m'aider, n'hésitez pas
Merci
Salut à tous

Dites moi, ces methodes peuvent-elles fonctionner sur le classeur perso.xls (celui des "macro pour tous" :D )
Je cherche à activer un type de vue (celle en A1 plutot qu'en 11) mais ma macro avec auto_open ne concerne que le classeur caché (le perso.xls)... et comme je ne peux pas donner de nom de classeur pour le selectionner (ça doit fonctionner pour tout !) je n'arrive pas faire marcher mon p'tit bout de code...

Bon, au pire, il me reste ma macro pour alterner entre les deux vues... mais ce serait mieux si j'arrivais à faire le tout en automatique !

Merci d'avance pour l'aide que vous pourriez éventuellement m'apporter !

bye bye, Poule.

Bjr
Svp ; Comment faire pour lancer un classeur Excel sans que je soi obliger de valider la confirmation de l'activation des macros ?
prck j'ai une macro de bien venu au debut qui sactive automatiquement, et puisque l'utilisateur doit confirmer tout dabord l'activation des macros, ça gache un peu la choz !!

Merci davance !!

Dans ton fichier excel, va dans le menu Outils > Macros > Sécurité et choisis le niveau de sécurité faible. Le message ne devrait plus s'afficher. Cependant, les autres macros pourront également passé sans problème, alors si tous les documents excel ne sont pas 100% fiable, assure-toi d'avoir un bon anti-virus.

Note: Désolé pour le double-postage, j'avais fait ajouter au lieu de répondre à(ce qui ne provoque pas l'envoie de email si l'utilisateur l'a activé)
Salut, je me permets de modifier la réponse.
Il faut que tu demandes vie les options excel, que ne s'ouvrent que les macros certifiées numériquement.
Pour créer un certificat je ne sais pas

Dans ton fichier excel, va dans le menu Outils > Macros > Sécurité et choisis le niveau de sécurité faible. Le message ne devrait plus s'afficher. Cependant, les autres macros pourront également passé sans problème, alors si tous les documents excel ne sont pas 100% fiable, assure-toi d'avoir un bon anti-virus.
Bonjour,
J'essaye en accord avec mon entreprise de mettre en place une macro qui nous permet de convertir un fichier excel (xsl) en un fichier de type SEQ ou SDF.
Cette macro me permet d'exporter mon fichier excel dans un logiciel de programmation.
Merci d'avance.
Bonjour Didine et bonjour à tous.

C'est quoi la question?