ouverture-fermeture en VBA

D

dood

Guest
Salut à tous,

Quel titre prometteur !!

En fait, ma question est relativement simple:
- je souhaite savoir ce que je dois écrire sur la feuille ThisWorkbook , pour qu'une macro (Macro_1) soit lancée automatiquement à l'ouverture du classeur.
Je précise que j'ai déjà ça d'écrit:

Private Sub workbook_open()
Sheets("acceuil").Range("b3").Activate
UserForm1.Show

Donc, à l'ouverture : j'arrive toujours sur la page "Acceuil "(désolé pour la faute d'orthographe), et mon UserForm s'ouvre tout seul (merci Thierry !!!)
Je voudrais donc y ajouter une commande qui execute aussi ma Macro_1, mais toutes mes tentatives ne marchent pas !

- d'autre part, à la fermeture du classeur, je souhaite que Macro_2 et Macro_3 s'execute, qu'il y ait une sauvegarde et qu'enfin le classeur se ferme.
Comment et où écrire cette commande ?

Merci d'avance...
PS: à force de parcourir tous les sites sur le VBA, je vais bien finir par arriver à comprendre comment ça marche !... Alors, je viendrais vous aider à répondre aux posts des gens comme moi !
 
T

Ti

Guest
pour que ta macro1 s'exécute, il suffit que tu la rajoutes dans ton workbook_open. Si elle ne veut pas s'exécuter, c'est sûrement parce qu'elle est déclarée Private. Supprime ce Private (ou même déclare-là Public) et ça ira.

Pour exécuter une macro à la formeture tu utilises l'événement BeforeClose

Private Sub Workbook_BeforeClose(Cancel As Boolean)
macro2
macro3
thisworkbook.save
End Sub
 

Statistiques des forums

Discussions
314 654
Messages
2 111 598
Membres
111 215
dernier inscrit
fateh