Comment en vba fermer tous les fichiers excels ouverts...même sur différentes sessions d'excel!!!
3 réponses
fred
Bonjour,
J'aimerais à l'aide d'une macro fermer tous les fichiers excels
ouverts...même sur différentes sessions d'excel!!!
J'ai testé ceci que j'ai trouvé sur ce forum :
Sub Macro1()
Application.DisplayAlerts = False
Application.Quit
End Sub
Comme j'ai plusieurs sessions...les autres fenêtres restent ouvertes!
Y'a t-il une possibilité en vba de "killer" toutes les fenêtres ouvertes
excel?
Merci pour votre aide
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Benead
Bonsoir,
Tu as quelle version d'Excel ?
Tu ne veux pas décocher l'option "Outils/Options/Affichage/Fenêtres dans la barre des taches" ?
Si tu as deux applications Excel qui se sont ouvertes car l'une d'elle était occupée, tu as du avoir un message par lequel ton perso.xla était verrouillé ?
Si tu es dans ce cas (deux applications Excel), pour régler ton problème, je pense que la solution est de passer par les Api de Windows ; je ne m'y connais pas beaucoup dans ce genre de chose, mais je vais regarder cela !
A+ Benead XL2000
fred a écrit:
Bonjour, J'aimerais à l'aide d'une macro fermer tous les fichiers excels ouverts...même sur différentes sessions d'excel!!! J'ai testé ceci que j'ai trouvé sur ce forum : Sub Macro1() Application.DisplayAlerts = False Application.Quit End Sub Comme j'ai plusieurs sessions...les autres fenêtres restent ouvertes! Y'a t-il une possibilité en vba de "killer" toutes les fenêtres ouvertes excel? Merci pour votre aide
Bonsoir,
Tu as quelle version d'Excel ?
Tu ne veux pas décocher l'option "Outils/Options/Affichage/Fenêtres dans la barre des taches" ?
Si tu as deux applications Excel qui se sont ouvertes car l'une d'elle était occupée, tu as du avoir un message par
lequel ton perso.xla était verrouillé ?
Si tu es dans ce cas (deux applications Excel), pour régler ton problème, je pense que la solution est de passer par les
Api de Windows ; je ne m'y connais pas beaucoup dans ce genre de chose, mais je vais regarder cela !
A+
Benead
XL2000
fred a écrit:
Bonjour,
J'aimerais à l'aide d'une macro fermer tous les fichiers excels
ouverts...même sur différentes sessions d'excel!!!
J'ai testé ceci que j'ai trouvé sur ce forum :
Sub Macro1()
Application.DisplayAlerts = False
Application.Quit
End Sub
Comme j'ai plusieurs sessions...les autres fenêtres restent ouvertes!
Y'a t-il une possibilité en vba de "killer" toutes les fenêtres ouvertes
excel?
Merci pour votre aide
Tu ne veux pas décocher l'option "Outils/Options/Affichage/Fenêtres dans la barre des taches" ?
Si tu as deux applications Excel qui se sont ouvertes car l'une d'elle était occupée, tu as du avoir un message par lequel ton perso.xla était verrouillé ?
Si tu es dans ce cas (deux applications Excel), pour régler ton problème, je pense que la solution est de passer par les Api de Windows ; je ne m'y connais pas beaucoup dans ce genre de chose, mais je vais regarder cela !
A+ Benead XL2000
fred a écrit:
Bonjour, J'aimerais à l'aide d'une macro fermer tous les fichiers excels ouverts...même sur différentes sessions d'excel!!! J'ai testé ceci que j'ai trouvé sur ce forum : Sub Macro1() Application.DisplayAlerts = False Application.Quit End Sub Comme j'ai plusieurs sessions...les autres fenêtres restent ouvertes! Y'a t-il une possibilité en vba de "killer" toutes les fenêtres ouvertes excel? Merci pour votre aide
fred
J'ai la version 2003 d'excel...En fait il y a plusieurs session d'excel qui sont lancés par la tâche planifiée de Windows. J'aimerais à travers une macro vba "forcer" à fermer toutes les sessions (même s'il y a le débogueur ou session occupée). Il semblerait que la solution serait de "killer" les processus excel.exe dans le gestionnaire des tâches. J'ai trouvé ceci sur un autre forum (ThierryAIM) pour lister les différents processus qui tournent dans le gestionnaire des tâches : Private Sub Command1_Click() Dim svc As Object Dim sQuery As String Dim oproc Set svc = GetObject("winmgmts:rootcimv2") sQuery = "select * from win32_process" i = 1 'sQuery = "excel.exe* from win32_process" For Each oproc In svc.execquery(sQuery) Debug.Print oproc.Name Range("A" & i).Value = oproc.Name i = i + 1 Next Set svc = Nothing End Sub
Mais comment arriver à "Killer" les différents programmes que l'on veut fermer??? Merci de votre aide
"Benead" a écrit dans le message de news:
Bonsoir,
Tu as quelle version d'Excel ?
Tu ne veux pas décocher l'option "Outils/Options/Affichage/Fenêtres dans la barre des taches" ?
Si tu as deux applications Excel qui se sont ouvertes car l'une d'elle était occupée, tu as du avoir un message par lequel ton perso.xla était verrouillé ?
Si tu es dans ce cas (deux applications Excel), pour régler ton problème, je pense que la solution est de passer par les Api de Windows ; je ne m'y connais pas beaucoup dans ce genre de chose, mais je vais regarder cela !
A+ Benead XL2000
fred a écrit:
Bonjour, J'aimerais à l'aide d'une macro fermer tous les fichiers excels ouverts...même sur différentes sessions d'excel!!! J'ai testé ceci que j'ai trouvé sur ce forum : Sub Macro1() Application.DisplayAlerts = False Application.Quit End Sub Comme j'ai plusieurs sessions...les autres fenêtres restent ouvertes! Y'a t-il une possibilité en vba de "killer" toutes les fenêtres ouvertes excel? Merci pour votre aide
J'ai la version 2003 d'excel...En fait il y a plusieurs session d'excel qui
sont lancés par la tâche planifiée de Windows.
J'aimerais à travers une macro vba "forcer" à fermer toutes les sessions
(même s'il y a le débogueur ou session occupée).
Il semblerait que la solution serait de "killer" les processus excel.exe
dans le gestionnaire des tâches.
J'ai trouvé ceci sur un autre forum (ThierryAIM) pour lister les différents
processus qui tournent dans le gestionnaire des tâches :
Private Sub Command1_Click()
Dim svc As Object
Dim sQuery As String
Dim oproc
Set svc = GetObject("winmgmts:rootcimv2")
sQuery = "select * from win32_process"
i = 1
'sQuery = "excel.exe* from win32_process"
For Each oproc In svc.execquery(sQuery)
Debug.Print oproc.Name
Range("A" & i).Value = oproc.Name
i = i + 1
Next
Set svc = Nothing
End Sub
Mais comment arriver à "Killer" les différents programmes que l'on veut
fermer???
Merci de votre aide
"Benead" <benead.forumxl@free.fr> a écrit dans le message de news:
44EF555A.9060502@free.fr...
Bonsoir,
Tu as quelle version d'Excel ?
Tu ne veux pas décocher l'option "Outils/Options/Affichage/Fenêtres dans
la barre des taches" ?
Si tu as deux applications Excel qui se sont ouvertes car l'une d'elle
était occupée, tu as du avoir un message par lequel ton perso.xla était
verrouillé ?
Si tu es dans ce cas (deux applications Excel), pour régler ton problème,
je pense que la solution est de passer par les Api de Windows ; je ne m'y
connais pas beaucoup dans ce genre de chose, mais je vais regarder cela !
A+
Benead
XL2000
fred a écrit:
Bonjour,
J'aimerais à l'aide d'une macro fermer tous les fichiers excels
ouverts...même sur différentes sessions d'excel!!!
J'ai testé ceci que j'ai trouvé sur ce forum :
Sub Macro1()
Application.DisplayAlerts = False
Application.Quit
End Sub
Comme j'ai plusieurs sessions...les autres fenêtres restent ouvertes!
Y'a t-il une possibilité en vba de "killer" toutes les fenêtres ouvertes
excel?
Merci pour votre aide
J'ai la version 2003 d'excel...En fait il y a plusieurs session d'excel qui sont lancés par la tâche planifiée de Windows. J'aimerais à travers une macro vba "forcer" à fermer toutes les sessions (même s'il y a le débogueur ou session occupée). Il semblerait que la solution serait de "killer" les processus excel.exe dans le gestionnaire des tâches. J'ai trouvé ceci sur un autre forum (ThierryAIM) pour lister les différents processus qui tournent dans le gestionnaire des tâches : Private Sub Command1_Click() Dim svc As Object Dim sQuery As String Dim oproc Set svc = GetObject("winmgmts:rootcimv2") sQuery = "select * from win32_process" i = 1 'sQuery = "excel.exe* from win32_process" For Each oproc In svc.execquery(sQuery) Debug.Print oproc.Name Range("A" & i).Value = oproc.Name i = i + 1 Next Set svc = Nothing End Sub
Mais comment arriver à "Killer" les différents programmes que l'on veut fermer??? Merci de votre aide
"Benead" a écrit dans le message de news:
Bonsoir,
Tu as quelle version d'Excel ?
Tu ne veux pas décocher l'option "Outils/Options/Affichage/Fenêtres dans la barre des taches" ?
Si tu as deux applications Excel qui se sont ouvertes car l'une d'elle était occupée, tu as du avoir un message par lequel ton perso.xla était verrouillé ?
Si tu es dans ce cas (deux applications Excel), pour régler ton problème, je pense que la solution est de passer par les Api de Windows ; je ne m'y connais pas beaucoup dans ce genre de chose, mais je vais regarder cela !
A+ Benead XL2000
fred a écrit:
Bonjour, J'aimerais à l'aide d'une macro fermer tous les fichiers excels ouverts...même sur différentes sessions d'excel!!! J'ai testé ceci que j'ai trouvé sur ce forum : Sub Macro1() Application.DisplayAlerts = False Application.Quit End Sub Comme j'ai plusieurs sessions...les autres fenêtres restent ouvertes! Y'a t-il une possibilité en vba de "killer" toutes les fenêtres ouvertes excel? Merci pour votre aide
Oliv'
*fred que je salut a écrit *: voici un script VBS qui fait cela
on error resume next set WshShell = CreateObject("WScript.Shell") do GetObject(,"excel.Application").Quit select case err.number case 429 a = msgbox("Il n'y a plus d'instance active d'Excel", vbokonly) exit do case else end select loop
*fred <fredgarlon@free.fr> que je salut a écrit *:
voici un script VBS qui fait cela
on error resume next
set WshShell = CreateObject("WScript.Shell")
do
GetObject(,"excel.Application").Quit
select case err.number
case 429
a = msgbox("Il n'y a plus d'instance active d'Excel", vbokonly)
exit do
case else
end select
loop
--
--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Have a nice day
Oliv'
Pour me joindre : http://cerbermail.com/?V8r2o1YHl4
les sites références:
Excel :http://www.excelabo.net http://xcell05.free.fr/
http://dj.joss.free.fr/
http://frederic.sigonneau.free.fr/ http://www.excel-vba-francais.com/
Word : http://faqword.free.fr/
Outlook : http://faq.outlook.free.fr/
les archives : http://groups.google.com/group/microsoft.public.fr.outlook
OE6 : http://www.faqoe.com/
Sql : http://sqlpro.developpez.com/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*fred que je salut a écrit *: voici un script VBS qui fait cela
on error resume next set WshShell = CreateObject("WScript.Shell") do GetObject(,"excel.Application").Quit select case err.number case 429 a = msgbox("Il n'y a plus d'instance active d'Excel", vbokonly) exit do case else end select loop