Qui sera capable de trouver cette formule?
0ceane
-
0ceane -
0ceane -
Bonjour,
Grace a une macro, j'ouvre 7 dossiers TXT dans de nouvelles pages Excel afin de toutes les copier dans un autre dossier Excel (celui qui contient la macro).
Mon probleme est le suivant : lorsque je veux refermer ces 7 fenetres Excel qui ne me servent plus a rien (vu que je les ai a present copier dans ma feuille principale), VBA m'indique qu'elle ne peut retrouver ces dossiers.
J'ai mis du temps a comprendre! A present, ce que je pense c'est que la macro ne les reconnait pas car ces fenetres ne sont enregistrees nulle part.
Il me faudrait donc une formule comme : fermer toutes les fenetres ouvertes par la macro et les fermer, sans enregistrer; ou encore: fermer toutes les fenetres excel sauf celle appellee XXX.
Quelqu'un peut il m'aider, je bloque depuis des jours?!
Grace a une macro, j'ouvre 7 dossiers TXT dans de nouvelles pages Excel afin de toutes les copier dans un autre dossier Excel (celui qui contient la macro).
Mon probleme est le suivant : lorsque je veux refermer ces 7 fenetres Excel qui ne me servent plus a rien (vu que je les ai a present copier dans ma feuille principale), VBA m'indique qu'elle ne peut retrouver ces dossiers.
J'ai mis du temps a comprendre! A present, ce que je pense c'est que la macro ne les reconnait pas car ces fenetres ne sont enregistrees nulle part.
Il me faudrait donc une formule comme : fermer toutes les fenetres ouvertes par la macro et les fermer, sans enregistrer; ou encore: fermer toutes les fenetres excel sauf celle appellee XXX.
Quelqu'un peut il m'aider, je bloque depuis des jours?!
A voir également:
- Qui sera capable de trouver cette formule?
- Formule si ou - Guide
- Trouver adresse mac - Guide
- Formule moyenne excel plusieurs colonnes - Guide
- Formule mathématique - Télécharger - Études & Formations
- Comment trouver le mot de passe wifi sur son téléphone - Guide
9 réponses
Salut,
Mets ce code dans un module et associes le à un bouton de la barre formulaire
Sub Ferme_Fichiers_Sauf_Classeur1()
Dim Wb
For Each Wb In Workbooks
If Wb.Name <> "Classeur1.xls" Then Wb.Close SaveChanges:=False
Next
End Sub
Ou directement dans les propriétés d'un CommandButton1 de la barre contrôle
Private Sub CommandButton1_Click()
Dim Wb
For Each Wb In Workbooks
If Wb.Name <> "Classeur1.xls" Then Wb.Close SaveChanges:=False
Next
End Sub
A+
Mike-31
Un problème sans solution est un problème mal posé (Einstein)
Mets ce code dans un module et associes le à un bouton de la barre formulaire
Sub Ferme_Fichiers_Sauf_Classeur1()
Dim Wb
For Each Wb In Workbooks
If Wb.Name <> "Classeur1.xls" Then Wb.Close SaveChanges:=False
Next
End Sub
Ou directement dans les propriétés d'un CommandButton1 de la barre contrôle
Private Sub CommandButton1_Click()
Dim Wb
For Each Wb In Workbooks
If Wb.Name <> "Classeur1.xls" Then Wb.Close SaveChanges:=False
Next
End Sub
A+
Mike-31
Un problème sans solution est un problème mal posé (Einstein)
Merci beaucoup de te pencher sur mon cas ^^ .
Quand tu mets, dans le premier code :
Sub Ferme_Fichiers_Sauf_Classeur1()
Il faut que je mette quelque part le nom du dossier? A la place de classeur 1 ou dans les parenthese, avec guillemets?
Et est ce que l'affectation a un bouton est necessaire? Car en fait je voudrais rajouter ce morceau dans une macro deja existante et qui possede deja un bouton.
Merci =)
Quand tu mets, dans le premier code :
Sub Ferme_Fichiers_Sauf_Classeur1()
Il faut que je mette quelque part le nom du dossier? A la place de classeur 1 ou dans les parenthese, avec guillemets?
Et est ce que l'affectation a un bouton est necessaire? Car en fait je voudrais rajouter ce morceau dans une macro deja existante et qui possede deja un bouton.
Merci =)
Re,
Tu remplaces simplement le nom du fichier qui dans l'exemple est Classeur1.xls par le nom du fichier que tu souhaites garder à l'écran.
Pour tester le code, tu peux l'associer à un bouton, et si le code te convient il n'y a aucun problème de l'intégrer dans ton code, tu mets la variable Dim Wb au début de ton code et le reste en bonne place en fonction de ce que tu cherches faire
A+
Mike-31
Un problème sans solution est un problème mal posé (Einstein)
Tu remplaces simplement le nom du fichier qui dans l'exemple est Classeur1.xls par le nom du fichier que tu souhaites garder à l'écran.
Pour tester le code, tu peux l'associer à un bouton, et si le code te convient il n'y a aucun problème de l'intégrer dans ton code, tu mets la variable Dim Wb au début de ton code et le reste en bonne place en fonction de ce que tu cherches faire
A+
Mike-31
Un problème sans solution est un problème mal posé (Einstein)
Re,
A priori ca va marcher (merci beaucoup!!!), le seul truc c'est qu'il me dit "End Sub Excpected" alors au'il y a bien un End Sub a la fin. Et quand je click sur Ok il me met en fond bleu le Dim du debut :s
A priori ca va marcher (merci beaucoup!!!), le seul truc c'est qu'il me dit "End Sub Excpected" alors au'il y a bien un End Sub a la fin. Et quand je click sur Ok il me met en fond bleu le Dim du debut :s
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Regardes ton code si tu n'as pas deux End Sub ou du teste hors du code
A+
Mike-31
Un problème sans solution est un problème mal posé (Einstein)
A+
Mike-31
Un problème sans solution est un problème mal posé (Einstein)
J'ai cherche un peu, en fait je voudrais placer ce morceau a la fin d'une autre macro, sauf que cette premier macro me reclamait un "End Sub", lorsque je l'ecrit, elle tire un trait n dessous et separe le code que tu m'a donne, et donc lorsque je lance ma macro, ce morceau de code ne s'active pas.
Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Dim Wb
End Sub
_____________________________________________________________________________
Sub Close_Workbooks_Except_Outil_de_control-Clean()
Dim Wb
For Each Wb In Workbooks
If Wb.Name <> "Outil de control-Clean" Then Wb.Close SaveChanges:=False
Next
End Sub
De plus, elle n'accepete pas le "-" du morceau en gras, comment y remedier?
Merci d'avance ca m'aide beaucoup
Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Dim Wb
End Sub
_____________________________________________________________________________
Sub Close_Workbooks_Except_Outil_de_control-Clean()
Dim Wb
For Each Wb In Workbooks
If Wb.Name <> "Outil de control-Clean" Then Wb.Close SaveChanges:=False
Next
End Sub
De plus, elle n'accepete pas le "-" du morceau en gras, comment y remedier?
Merci d'avance ca m'aide beaucoup
Cette variable, doit être placé au début de la première macro ou juste au dessous du nom de la macro
et les ligne ci-dessous avant End Sub
For Each Wb In Workbooks
If Wb.Name <> "Outil de control-Clean" Then Wb.Close SaveChanges:=False
Next
Ce qui est en gras fait parti du langage EXCEL, change l'intitulé et essayes de raccourcir
A+
Mike-31
Un problème sans solution est un problème mal posé (Einstein)
et les ligne ci-dessous avant End Sub
For Each Wb In Workbooks
If Wb.Name <> "Outil de control-Clean" Then Wb.Close SaveChanges:=False
Next
Ce qui est en gras fait parti du langage EXCEL, change l'intitulé et essayes de raccourcir
A+
Mike-31
Un problème sans solution est un problème mal posé (Einstein)