VBA/macro

  • Initiateur de la discussion Nicolas
  • Date de début
N

Nicolas

Guest
Salut,

J'ai un problème avec une macro

Voilà j'ai un classeur qui contient un bouton
Ce bouton m'ouvre une boîte de dialogue d'un autre classeur (macro ci-dessous)

J'aimerais que lorsque ma boîte s'affiche le classeur qui contient le bouton se ferme

Ma macro doit fermer le classeur actif, aller dans Banques.xls et afficher la boite

Mais si je mets activeworkbooks.close (au no 1) la macro ne s'execute pas
alors je sais pas comment fermer ce classeur


Sub BoiteZone()
1
Application.Run "Banque.xls!ChoixZones"

End Sub

Merci d'avance
 
T

Ti

Guest
tu peux tout simplement fermer ton fichier APRES l'appel du userform de banque.xls en mettant dans la feuille Thisworkbook de banque.xls un appel à ce userform (qui doit être, selon ton exemple, ChoixZones)

Private Sub Workbook_Open()
ChoixZones.Show
End Sub

et la macro d'appel de banque.xls, ressemble à celle-ci :

Sub Lancer_Banque()
Dim NomFichier As String
'cache le userform avant d'ouvrir banque.xls, remplace userform1 par le nom de ton userform
Userform1.hide

NomFichier = ActiveWorkbook.Name
Workbooks.Open "banque.xls"
Workbooks(NomFichier).Close
End Sub

comme ça, tu lances Banque.xls, la macro auto_open ouvre le userform
et quand elle rend la main, le fichier d'où est parti l'appel est fermé.
C'est une solution, en attendant d'en avoir trouvé une meilleure, mais elle marche très bien
 

Discussions similaires

Réponses
3
Affichages
274
Réponses
5
Affichages
367
Compte Supprimé 979
C

Statistiques des forums

Discussions
311 725
Messages
2 081 943
Membres
101 849
dernier inscrit
florentMIG