Bonjour,
J'ai essayé ta proposition. Je n'utilise pas Outlook Express,
mais "Windows Live Mail".
Sans rien modifier à ta procédure, on me dit qu'Outlook
Outlook Ext ouvert.
Dans la fonction "Outlook_Express", le buffer indique
une application au nom de "Outlook Express NewStores...."
Tu sais à quoi il fait référence ? Je n'ai.ien qui porte ce
nom dans les processus ouverts dans le gestionnaire de tâches.
Salutations.
"Hervé" a écrit dans le message de groupe de
discussion :
Bonjour Pierre,
Et si tu commençais d'abords par un test de connexion à internet ?
ensuite,
tu recherche si Outlook Express est ouvert. A mettre dans un module
standard
et lancer la proc "Test". 1 boîte de message te diras si tu es connecté et
une autre te diras si Outlook Express est ouvert. Adapte ces 2 tests dans
ta
proc :
'Api
Public Declare Function RecupTitre _
Lib "user32" _
Alias "GetWindowTextA" ( _
ByVal hWnd As Long, _
ByVal lpString As String, _
ByVal cch As Long) As Long
Public Declare Function EnumFenetres _
Lib "user32" _
Alias "EnumWindows" ( _
ByVal lpEnumFunc As Long, _
ByVal lParam As Long) As Long
Public Declare Function InternetGetConnectedState _
Lib "wininet.dll" ( _
ByRef lpdwFlags As Long, _
ByVal dwReserved As Long) As Long
Dim Ouvert As String
'teste si connexion à internet
Function TestDeConnexion() As Boolean
TestDeConnexion = InternetGetConnectedState(0&, 0&)
End Function
'cherche dans le titre des fenêtres si "Outlook Express"
Public Function Outlook_Express(ByVal hWnd As Long, _
ByVal lgParam As Long) As Long
Dim Buffer As String
Dim Result As Long
Buffer = Space(255)
Result = RecupTitre(hWnd, Buffer, 255)
If Left(Buffer, 1) <> Chr(0) Then
If InStr(Trim(Buffer), "Outlook Express") <> 0 Then
Ouvert = "Outlook est ouvert !"
Exit Function
End If
End If
Outlook_Express = 1
End Function
'proc de test, à adapter les lignes dans ton code
Sub Test()
Dim lResult As Long
If TestDeConnexion Then
MsgBox "Vous êtes connecté à Internet", vbInformation
Else
MsgBox "Vous n'êtes pas connecté à Internet", vbInformation
End If
lResult = EnumFenetres(AddressOf Outlook_Express, 0&)
MsgBox Ouvert
End Sub
Hervé.
"pirot" a écrit dans le message de
news:
Bonjour,
en vba excel bien sûr ...
Mon code envoi des courrriers avec outlook express (avec image dans le
texte), en nombre.
J'envoie des paquets de 20 adresses en copie cachée:
outlook express s'ouvre, intègre les adresses, le message, l'image,
envoie le courrier, puis se ferme.
(si tout se passe bien ....)
squelette du code:
for paquet =1 to max
envoimail (avec les paramètres)
next i
cela fonctionne très bien, sauf si outlook express échoue (par exemple
pas de connexion internet)
dans ce cas, outlook reste ouvert sur la fenêtre d'erreur d'envoi.
et ensuite, c'est la cata avec vba.
Question:
comment savoir en VBA qu'outlook express est ouvert ?
(cela voudrait dire que la boucle doit s'arrêter, et informer
l'utilisateur que l'envoi a échoué
à l'envoi du paquet n° i.
merci de vos réponses
pierreL.
Bonjour,
J'ai essayé ta proposition. Je n'utilise pas Outlook Express,
mais "Windows Live Mail".
Sans rien modifier à ta procédure, on me dit qu'Outlook
Outlook Ext ouvert.
Dans la fonction "Outlook_Express", le buffer indique
une application au nom de "Outlook Express NewStores...."
Tu sais à quoi il fait référence ? Je n'ai.ien qui porte ce
nom dans les processus ouverts dans le gestionnaire de tâches.
Salutations.
"Hervé" <silve-herve@orange.fr> a écrit dans le message de groupe de
discussion :
32636EC8-3CB9-4AC1-8718-7B0C08CDCDF6@microsoft.com...
Bonjour Pierre,
Et si tu commençais d'abords par un test de connexion à internet ?
ensuite,
tu recherche si Outlook Express est ouvert. A mettre dans un module
standard
et lancer la proc "Test". 1 boîte de message te diras si tu es connecté et
une autre te diras si Outlook Express est ouvert. Adapte ces 2 tests dans
ta
proc :
'Api
Public Declare Function RecupTitre _
Lib "user32" _
Alias "GetWindowTextA" ( _
ByVal hWnd As Long, _
ByVal lpString As String, _
ByVal cch As Long) As Long
Public Declare Function EnumFenetres _
Lib "user32" _
Alias "EnumWindows" ( _
ByVal lpEnumFunc As Long, _
ByVal lParam As Long) As Long
Public Declare Function InternetGetConnectedState _
Lib "wininet.dll" ( _
ByRef lpdwFlags As Long, _
ByVal dwReserved As Long) As Long
Dim Ouvert As String
'teste si connexion à internet
Function TestDeConnexion() As Boolean
TestDeConnexion = InternetGetConnectedState(0&, 0&)
End Function
'cherche dans le titre des fenêtres si "Outlook Express"
Public Function Outlook_Express(ByVal hWnd As Long, _
ByVal lgParam As Long) As Long
Dim Buffer As String
Dim Result As Long
Buffer = Space(255)
Result = RecupTitre(hWnd, Buffer, 255)
If Left(Buffer, 1) <> Chr(0) Then
If InStr(Trim(Buffer), "Outlook Express") <> 0 Then
Ouvert = "Outlook est ouvert !"
Exit Function
End If
End If
Outlook_Express = 1
End Function
'proc de test, à adapter les lignes dans ton code
Sub Test()
Dim lResult As Long
If TestDeConnexion Then
MsgBox "Vous êtes connecté à Internet", vbInformation
Else
MsgBox "Vous n'êtes pas connecté à Internet", vbInformation
End If
lResult = EnumFenetres(AddressOf Outlook_Express, 0&)
MsgBox Ouvert
End Sub
Hervé.
"pirot" <plandhauser@gmail.com> a écrit dans le message de
news:82da5dca-d66b-4861-92fe-cef2a86cd17e@f11g2000yqm.googlegroups.com...
Bonjour,
en vba excel bien sûr ...
Mon code envoi des courrriers avec outlook express (avec image dans le
texte), en nombre.
J'envoie des paquets de 20 adresses en copie cachée:
outlook express s'ouvre, intègre les adresses, le message, l'image,
envoie le courrier, puis se ferme.
(si tout se passe bien ....)
squelette du code:
for paquet =1 to max
envoimail (avec les paramètres)
next i
cela fonctionne très bien, sauf si outlook express échoue (par exemple
pas de connexion internet)
dans ce cas, outlook reste ouvert sur la fenêtre d'erreur d'envoi.
et ensuite, c'est la cata avec vba.
Question:
comment savoir en VBA qu'outlook express est ouvert ?
(cela voudrait dire que la boucle doit s'arrêter, et informer
l'utilisateur que l'envoi a échoué
à l'envoi du paquet n° i.
merci de vos réponses
pierreL.
Bonjour,
J'ai essayé ta proposition. Je n'utilise pas Outlook Express,
mais "Windows Live Mail".
Sans rien modifier à ta procédure, on me dit qu'Outlook
Outlook Ext ouvert.
Dans la fonction "Outlook_Express", le buffer indique
une application au nom de "Outlook Express NewStores...."
Tu sais à quoi il fait référence ? Je n'ai.ien qui porte ce
nom dans les processus ouverts dans le gestionnaire de tâches.
Salutations.
"Hervé" a écrit dans le message de groupe de
discussion :
Bonjour Pierre,
Et si tu commençais d'abords par un test de connexion à internet ?
ensuite,
tu recherche si Outlook Express est ouvert. A mettre dans un module
standard
et lancer la proc "Test". 1 boîte de message te diras si tu es connecté et
une autre te diras si Outlook Express est ouvert. Adapte ces 2 tests dans
ta
proc :
'Api
Public Declare Function RecupTitre _
Lib "user32" _
Alias "GetWindowTextA" ( _
ByVal hWnd As Long, _
ByVal lpString As String, _
ByVal cch As Long) As Long
Public Declare Function EnumFenetres _
Lib "user32" _
Alias "EnumWindows" ( _
ByVal lpEnumFunc As Long, _
ByVal lParam As Long) As Long
Public Declare Function InternetGetConnectedState _
Lib "wininet.dll" ( _
ByRef lpdwFlags As Long, _
ByVal dwReserved As Long) As Long
Dim Ouvert As String
'teste si connexion à internet
Function TestDeConnexion() As Boolean
TestDeConnexion = InternetGetConnectedState(0&, 0&)
End Function
'cherche dans le titre des fenêtres si "Outlook Express"
Public Function Outlook_Express(ByVal hWnd As Long, _
ByVal lgParam As Long) As Long
Dim Buffer As String
Dim Result As Long
Buffer = Space(255)
Result = RecupTitre(hWnd, Buffer, 255)
If Left(Buffer, 1) <> Chr(0) Then
If InStr(Trim(Buffer), "Outlook Express") <> 0 Then
Ouvert = "Outlook est ouvert !"
Exit Function
End If
End If
Outlook_Express = 1
End Function
'proc de test, à adapter les lignes dans ton code
Sub Test()
Dim lResult As Long
If TestDeConnexion Then
MsgBox "Vous êtes connecté à Internet", vbInformation
Else
MsgBox "Vous n'êtes pas connecté à Internet", vbInformation
End If
lResult = EnumFenetres(AddressOf Outlook_Express, 0&)
MsgBox Ouvert
End Sub
Hervé.
"pirot" a écrit dans le message de
news:
Bonjour,
en vba excel bien sûr ...
Mon code envoi des courrriers avec outlook express (avec image dans le
texte), en nombre.
J'envoie des paquets de 20 adresses en copie cachée:
outlook express s'ouvre, intègre les adresses, le message, l'image,
envoie le courrier, puis se ferme.
(si tout se passe bien ....)
squelette du code:
for paquet =1 to max
envoimail (avec les paramètres)
next i
cela fonctionne très bien, sauf si outlook express échoue (par exemple
pas de connexion internet)
dans ce cas, outlook reste ouvert sur la fenêtre d'erreur d'envoi.
et ensuite, c'est la cata avec vba.
Question:
comment savoir en VBA qu'outlook express est ouvert ?
(cela voudrait dire que la boucle doit s'arrêter, et informer
l'utilisateur que l'envoi a échoué
à l'envoi du paquet n° i.
merci de vos réponses
pierreL.
Bonjour,
J'ai essayé ta proposition. Je n'utilise pas Outlook Express,
mais "Windows Live Mail".
Sans rien modifier à ta procédure, on me dit qu'Outlook
Outlook Ext ouvert.
Dans la fonction "Outlook_Express", le buffer indique
une application au nom de "Outlook Express NewStores...."
Tu sais à quoi il fait référence ? Je n'ai.ien qui porte ce
nom dans les processus ouverts dans le gestionnaire de tâches.
Salutations.
"Hervé" a écrit dans le message de groupe de
discussion :
Bonjour Pierre,
Et si tu commençais d'abords par un test de connexion à internet ?
ensuite,
tu recherche si Outlook Express est ouvert. A mettre dans un module
standard
et lancer la proc "Test". 1 boîte de message te diras si tu es connecté et
une autre te diras si Outlook Express est ouvert. Adapte ces 2 tests dans
ta
proc :
'Api
Public Declare Function RecupTitre _
Lib "user32" _
Alias "GetWindowTextA" ( _
ByVal hWnd As Long, _
ByVal lpString As String, _
ByVal cch As Long) As Long
Public Declare Function EnumFenetres _
Lib "user32" _
Alias "EnumWindows" ( _
ByVal lpEnumFunc As Long, _
ByVal lParam As Long) As Long
Public Declare Function InternetGetConnectedState _
Lib "wininet.dll" ( _
ByRef lpdwFlags As Long, _
ByVal dwReserved As Long) As Long
Dim Ouvert As String
'teste si connexion à internet
Function TestDeConnexion() As Boolean
TestDeConnexion = InternetGetConnectedState(0&, 0&)
End Function
'cherche dans le titre des fenêtres si "Outlook Express"
Public Function Outlook_Express(ByVal hWnd As Long, _
ByVal lgParam As Long) As Long
Dim Buffer As String
Dim Result As Long
Buffer = Space(255)
Result = RecupTitre(hWnd, Buffer, 255)
If Left(Buffer, 1) <> Chr(0) Then
If InStr(Trim(Buffer), "Outlook Express") <> 0 Then
Ouvert = "Outlook est ouvert !"
Exit Function
End If
End If
Outlook_Express = 1
End Function
'proc de test, à adapter les lignes dans ton code
Sub Test()
Dim lResult As Long
If TestDeConnexion Then
MsgBox "Vous êtes connecté à Internet", vbInformation
Else
MsgBox "Vous n'êtes pas connecté à Internet", vbInformation
End If
lResult = EnumFenetres(AddressOf Outlook_Express, 0&)
MsgBox Ouvert
End Sub
Hervé.
"pirot" a écrit dans le message de
news:
Bonjour,
en vba excel bien sûr ...
Mon code envoi des courrriers avec outlook express (avec image dans le
texte), en nombre.
J'envoie des paquets de 20 adresses en copie cachée:
outlook express s'ouvre, intègre les adresses, le message, l'image,
envoie le courrier, puis se ferme.
(si tout se passe bien ....)
squelette du code:
for paquet =1 to max
envoimail (avec les paramètres)
next i
cela fonctionne très bien, sauf si outlook express échoue (par exemple
pas de connexion internet)
dans ce cas, outlook reste ouvert sur la fenêtre d'erreur d'envoi.
et ensuite, c'est la cata avec vba.
Question:
comment savoir en VBA qu'outlook express est ouvert ?
(cela voudrait dire que la boucle doit s'arrêter, et informer
l'utilisateur que l'envoi a échoué
à l'envoi du paquet n° i.
merci de vos réponses
pierreL.
Bonjour,
J'ai essayé ta proposition. Je n'utilise pas Outlook Express,
mais "Windows Live Mail".
Sans rien modifier à ta procédure, on me dit qu'Outlook
Outlook Ext ouvert.
Dans la fonction "Outlook_Express", le buffer indique
une application au nom de "Outlook Express NewStores...."
Tu sais à quoi il fait référence ? Je n'ai.ien qui porte ce
nom dans les processus ouverts dans le gestionnaire de tâches.
Salutations.
"Hervé" <silve-herve@orange.fr> a écrit dans le message de groupe de
discussion :
32636EC8-3CB9-4AC1-8718-7B0C08CDCDF6@microsoft.com...
Bonjour Pierre,
Et si tu commençais d'abords par un test de connexion à internet ?
ensuite,
tu recherche si Outlook Express est ouvert. A mettre dans un module
standard
et lancer la proc "Test". 1 boîte de message te diras si tu es connecté et
une autre te diras si Outlook Express est ouvert. Adapte ces 2 tests dans
ta
proc :
'Api
Public Declare Function RecupTitre _
Lib "user32" _
Alias "GetWindowTextA" ( _
ByVal hWnd As Long, _
ByVal lpString As String, _
ByVal cch As Long) As Long
Public Declare Function EnumFenetres _
Lib "user32" _
Alias "EnumWindows" ( _
ByVal lpEnumFunc As Long, _
ByVal lParam As Long) As Long
Public Declare Function InternetGetConnectedState _
Lib "wininet.dll" ( _
ByRef lpdwFlags As Long, _
ByVal dwReserved As Long) As Long
Dim Ouvert As String
'teste si connexion à internet
Function TestDeConnexion() As Boolean
TestDeConnexion = InternetGetConnectedState(0&, 0&)
End Function
'cherche dans le titre des fenêtres si "Outlook Express"
Public Function Outlook_Express(ByVal hWnd As Long, _
ByVal lgParam As Long) As Long
Dim Buffer As String
Dim Result As Long
Buffer = Space(255)
Result = RecupTitre(hWnd, Buffer, 255)
If Left(Buffer, 1) <> Chr(0) Then
If InStr(Trim(Buffer), "Outlook Express") <> 0 Then
Ouvert = "Outlook est ouvert !"
Exit Function
End If
End If
Outlook_Express = 1
End Function
'proc de test, à adapter les lignes dans ton code
Sub Test()
Dim lResult As Long
If TestDeConnexion Then
MsgBox "Vous êtes connecté à Internet", vbInformation
Else
MsgBox "Vous n'êtes pas connecté à Internet", vbInformation
End If
lResult = EnumFenetres(AddressOf Outlook_Express, 0&)
MsgBox Ouvert
End Sub
Hervé.
"pirot" <plandhauser@gmail.com> a écrit dans le message de
news:82da5dca-d66b-4861-92fe-cef2a86cd17e@f11g2000yqm.googlegroups.com...
Bonjour,
en vba excel bien sûr ...
Mon code envoi des courrriers avec outlook express (avec image dans le
texte), en nombre.
J'envoie des paquets de 20 adresses en copie cachée:
outlook express s'ouvre, intègre les adresses, le message, l'image,
envoie le courrier, puis se ferme.
(si tout se passe bien ....)
squelette du code:
for paquet =1 to max
envoimail (avec les paramètres)
next i
cela fonctionne très bien, sauf si outlook express échoue (par exemple
pas de connexion internet)
dans ce cas, outlook reste ouvert sur la fenêtre d'erreur d'envoi.
et ensuite, c'est la cata avec vba.
Question:
comment savoir en VBA qu'outlook express est ouvert ?
(cela voudrait dire que la boucle doit s'arrêter, et informer
l'utilisateur que l'envoi a échoué
à l'envoi du paquet n° i.
merci de vos réponses
pierreL.
Bonjour,
J'ai essayé ta proposition. Je n'utilise pas Outlook Express,
mais "Windows Live Mail".
Sans rien modifier à ta procédure, on me dit qu'Outlook
Outlook Ext ouvert.
Dans la fonction "Outlook_Express", le buffer indique
une application au nom de "Outlook Express NewStores...."
Tu sais à quoi il fait référence ? Je n'ai.ien qui porte ce
nom dans les processus ouverts dans le gestionnaire de tâches.
Salutations.
"Hervé" a écrit dans le message de groupe de
discussion :
Bonjour Pierre,
Et si tu commençais d'abords par un test de connexion à internet ?
ensuite,
tu recherche si Outlook Express est ouvert. A mettre dans un module
standard
et lancer la proc "Test". 1 boîte de message te diras si tu es connecté et
une autre te diras si Outlook Express est ouvert. Adapte ces 2 tests dans
ta
proc :
'Api
Public Declare Function RecupTitre _
Lib "user32" _
Alias "GetWindowTextA" ( _
ByVal hWnd As Long, _
ByVal lpString As String, _
ByVal cch As Long) As Long
Public Declare Function EnumFenetres _
Lib "user32" _
Alias "EnumWindows" ( _
ByVal lpEnumFunc As Long, _
ByVal lParam As Long) As Long
Public Declare Function InternetGetConnectedState _
Lib "wininet.dll" ( _
ByRef lpdwFlags As Long, _
ByVal dwReserved As Long) As Long
Dim Ouvert As String
'teste si connexion à internet
Function TestDeConnexion() As Boolean
TestDeConnexion = InternetGetConnectedState(0&, 0&)
End Function
'cherche dans le titre des fenêtres si "Outlook Express"
Public Function Outlook_Express(ByVal hWnd As Long, _
ByVal lgParam As Long) As Long
Dim Buffer As String
Dim Result As Long
Buffer = Space(255)
Result = RecupTitre(hWnd, Buffer, 255)
If Left(Buffer, 1) <> Chr(0) Then
If InStr(Trim(Buffer), "Outlook Express") <> 0 Then
Ouvert = "Outlook est ouvert !"
Exit Function
End If
End If
Outlook_Express = 1
End Function
'proc de test, à adapter les lignes dans ton code
Sub Test()
Dim lResult As Long
If TestDeConnexion Then
MsgBox "Vous êtes connecté à Internet", vbInformation
Else
MsgBox "Vous n'êtes pas connecté à Internet", vbInformation
End If
lResult = EnumFenetres(AddressOf Outlook_Express, 0&)
MsgBox Ouvert
End Sub
Hervé.
"pirot" a écrit dans le message de
news:
Bonjour,
en vba excel bien sûr ...
Mon code envoi des courrriers avec outlook express (avec image dans le
texte), en nombre.
J'envoie des paquets de 20 adresses en copie cachée:
outlook express s'ouvre, intègre les adresses, le message, l'image,
envoie le courrier, puis se ferme.
(si tout se passe bien ....)
squelette du code:
for paquet =1 to max
envoimail (avec les paramètres)
next i
cela fonctionne très bien, sauf si outlook express échoue (par exemple
pas de connexion internet)
dans ce cas, outlook reste ouvert sur la fenêtre d'erreur d'envoi.
et ensuite, c'est la cata avec vba.
Question:
comment savoir en VBA qu'outlook express est ouvert ?
(cela voudrait dire que la boucle doit s'arrêter, et informer
l'utilisateur que l'envoi a échoué
à l'envoi du paquet n° i.
merci de vos réponses
pierreL.