Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Microsoft Outlook et Excel

4 réponses
Avatar
Ritalou
Bonjour à tous
Grace à une macro de Benoit Marchand ,j'ai la liste de toutes les tâches
actives en mémoire
Mon but : Chercher a verifier si Microsoft Outlook est ouvert ou fermé.
Jusque là pas de bleme la macro fonctionne bien. mais .....
je me retrouve avec plusieurs fois Microsoft Outlook d'ouvert,parfois meme
sans etre visible
dans ma barre des taches comme s'il etait ouvert 2,3,4 fois mais sans etre
accessible
Je suppose que parfois je dois avoir des plantages (Excel ou Microsoft
Outlook)
qui font que des cessions reste ouvertes mais invisibles

1) Comment puis je nettoyer (Fermer) uniquement les taches non visible (et
uniquement Microsoft Outlook)
(et/ou)
2) Comment puis je savoir que la ou les taches que me donne cette macro de
Benoit
sont visibles dans ma barre des taches
Par avance merci de vos reponses ou pistes
Ritalou
Excel2000-Win2000

4 réponses

Avatar
Patrick Fredin
Bonjour,

Voici un petit code VBScript (à adapter) qui devrait t'aider et qui
t'évitera, je pense, de créer plusieurs instances de Outlook.

'check pour vérifiez si outlook est ouvert
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!" & strComputer &
"rootcimv2")
Set colProcessList = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name = 'outlook.exe'")
For Each objProcess in colProcessList
check="go"
Next
'si oulook fermé message
if check <> "go" then
msgbox "Veillez ouvrir Outlook avant de poursuivre.",48
end if
Set objWMIService = Nothing
Set colProcessList = nothing


--
Patrick

"Ritalou" wrote in message
news:%
Bonjour à tous
Grace à une macro de Benoit Marchand ,j'ai la liste de toutes les tâches
actives en mémoire
Mon but : Chercher a verifier si Microsoft Outlook est ouvert ou fermé.
Jusque là pas de bleme la macro fonctionne bien. mais .....
je me retrouve avec plusieurs fois Microsoft Outlook d'ouvert,parfois meme
sans etre visible
dans ma barre des taches comme s'il etait ouvert 2,3,4 fois mais sans etre
accessible
Je suppose que parfois je dois avoir des plantages (Excel ou Microsoft
Outlook)
qui font que des cessions reste ouvertes mais invisibles

1) Comment puis je nettoyer (Fermer) uniquement les taches non visible (et
uniquement Microsoft Outlook)
(et/ou)
2) Comment puis je savoir que la ou les taches que me donne cette macro de
Benoit
sont visibles dans ma barre des taches
Par avance merci de vos reponses ou pistes
Ritalou
Excel2000-Win2000








Avatar
Ritalou
Merci Patrick
je vais tester




Patrick Fredin a écrit dans le message
:
Bonjour,

Voici un petit code VBScript (à adapter) qui devrait t'aider et qui
t'évitera, je pense, de créer plusieurs instances de Outlook.

'check pour vérifiez si outlook est ouvert
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!" & strComputer &
"rootcimv2")
Set colProcessList = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name = 'outlook.exe'")
For Each objProcess in colProcessList
check="go"
Next
'si oulook fermé message
if check <> "go" then
msgbox "Veillez ouvrir Outlook avant de poursuivre.",48
end if
Set objWMIService = Nothing
Set colProcessList = nothing


--
Patrick

"Ritalou" wrote in message
news:%
Bonjour à tous
Grace à une macro de Benoit Marchand ,j'ai la liste de toutes les tâches
actives en mémoire
Mon but : Chercher a verifier si Microsoft Outlook est ouvert ou fermé.
Jusque là pas de bleme la macro fonctionne bien. mais .....
je me retrouve avec plusieurs fois Microsoft Outlook d'ouvert,parfois
meme


sans etre visible
dans ma barre des taches comme s'il etait ouvert 2,3,4 fois mais sans
etre


accessible
Je suppose que parfois je dois avoir des plantages (Excel ou Microsoft
Outlook)
qui font que des cessions reste ouvertes mais invisibles

1) Comment puis je nettoyer (Fermer) uniquement les taches non visible
(et


uniquement Microsoft Outlook)
(et/ou)
2) Comment puis je savoir que la ou les taches que me donne cette macro
de


Benoit
sont visibles dans ma barre des taches
Par avance merci de vos reponses ou pistes
Ritalou
Excel2000-Win2000












Avatar
Gaenonius
Si je puis me permettre, il manque cette instruction au tout début de la procédure :

strComputer = "."

--
Gaenonius

Bonjour,

Voici un petit code VBScript (à adapter) qui devrait t'aider et qui
t'évitera, je pense, de créer plusieurs instances de Outlook.

'check pour vérifiez si outlook est ouvert
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!" & strComputer &
"rootcimv2")
Set colProcessList = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name = 'outlook.exe'")
For Each objProcess in colProcessList
check="go"
Next
'si oulook fermé message
if check <> "go" then
msgbox "Veillez ouvrir Outlook avant de poursuivre.",48
end if
Set objWMIService = Nothing
Set colProcessList = nothing




Avatar
Ritalou
Merci a toi Gaenonius
la macro de Patrick fonctionne beaucoup mieu mais .....
mon bleme reste entier car si j'ai une instance de microsoft outlook
qui est ouverte et non visible le bout de code de Patrick ne bloque rien
Ce que je cherche est :
1) Comment puis je nettoyer (Fermer) uniquement
les taches non visible (et uniquement Microsoft Outlook)
(et/ou)
2) Comment puis je savoir que la ou les taches que
me donne la macro de Benoit sont visibles dans ma barre des taches

Complement d'info : Pourquoi je cherche cela ?
Quand j'envoi un mail via excel, si microsoft outlook
n'est pas visible dans ma barre des taches, alors excel rame et a la fin
plante
mais mon mail par quand meme

Merci d'avance
Ritalou




"Gaenonius" a écrit dans le message news:

Si je puis me permettre, il manque cette instruction au tout début de la
procédure :


strComputer = "."

--
Gaenonius

Bonjour,

Voici un petit code VBScript (à adapter) qui devrait t'aider et qui
t'évitera, je pense, de créer plusieurs instances de Outlook.

'check pour vérifiez si outlook est ouvert
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!" & strComputer &
"rootcimv2")
Set colProcessList = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name = 'outlook.exe'")
For Each objProcess in colProcessList
check="go"
Next
'si oulook fermé message
if check <> "go" then
msgbox "Veillez ouvrir Outlook avant de poursuivre.",48
end if
Set objWMIService = Nothing
Set colProcessList = nothing