Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Vérifier connection réseau ou confirmation mail envoyé

  • Initiateur de la discussion Initiateur de la discussion Guigui
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Guigui

XLDnaute Occasionnel
Bonjour,

Je m'étais fais un petit programme pour envoyer facilement une feuille excel en mail (outlook express) via VBA, tout fonctionne trés bien mais voilà qu'aujourd'hui, Outlook Express étais "offline" (coupure du réseau ou bien bug du serveur exchange...)

Du coup, un "stop" radical dans ma procedure d'envoie (qui a échoué évidemment) et de la suite du programme.

Pour éviter, le tant redouté message de "deboguage" qui plait pas des masses aux utilisateurs..., existe t il un moyen de tester si Outlook express est "Online", ou si exchange est bien synchro ?

ou autres chemin, vérifier si le mail n'est plus dans "la boite d'envoie" (donc bien envoyé) ?

D'ailleurs (question annexe), mes mails envoyés via VBA ne se retrouvent pas dans le dossier "Eléments Envoyés" ! Une idée ??

Merci d'avance pour votre aide.

Slts
Guillaume
 
Re : Vérifier connection réseau ou confirmation mail envoyé

Bonsoir,

Essaye avec ceçi :

2 Temps :
- le premier teste la liaison internet (Attendre quelque secondes à chaque test)
- Puis on vérifie qu'outlook express est actif ou pas.

Code:
Option Explicit

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 Etat As String


Sub test()
Dim lResult As Long

'Test  si connexion 
If TestDeConnexion Then
    MsgBox "Vous étes connecté", vbInformation
Else
    MsgBox "Vous n'étes pas connecté", vbInformation
End If

'Test si Outlook Express Actif
lResult = EnumFenetres(AddressOf Outlook_Express, 0&)
MsgBox Etat

End Sub


'Test  connexion 
Function TestDeConnexion() As Boolean

     TestDeConnexion = InternetGetConnectedState(0&, 0&)

End Function



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
        Etat = "Outlook Express est Actif !"
        Exit Function
    End If
End If

Outlook_Express = 1
Etat = "Outlook Express est Inactif !"
End Function
 
Re : Vérifier connection réseau ou confirmation mail envoyé

Re,

Merci pour ton aide.
Le test de liaison est bien utile. merci.
Mais dans mon cas, la liaison internet étais établie, mais la connections au serveur exchange de la boite mail étais "down".
Outlook indiquais "offline" ou "déconnecté" en bas de la fenetre

Que signifie pour le test sur outlook ? verifie t il si outlook est "ouvert" (Actif) ?

Merci par avance.

Slts
Guillaume
 
Re : Vérifier connection réseau ou confirmation mail envoyé

Re,

Oui le test outlook vérifie si outlok Express est ouvert ou pas, mais je suis hors sujet, à ce que je vois 🙄
 
Re : Vérifier connection réseau ou confirmation mail envoyé

bonjour,

ceçi te conviendra mieux il me semble. Ca vient tester si une connection internet existe et voir si l'on travail hors connection (Offline).

Code:
Private Declare Function InternetGetConnectedState Lib "wininet" _
        (ByRef dwflags As Long, ByVal dwReserved As Long) As Long


Private Const INTERNET_CONNECTION_OFFLINE As Long = &H20

Private Function TestOnOffLine() As String

   Dim dwflags As Long
   Dim Info As String
   
   'Si connection OK
   If InternetGetConnectedState(dwflags, 0&) Then
      ' Test Si Travail Hors connection
      If dwflags And INTERNET_CONNECTION_OFFLINE Then
         Info = "OFF Line. "
         Else
         Info = "ON Line. "
      End If
   Else
   'Sinon
   Info = "Non connecté à l'Internet pour le moment."
   End If
   TestOnOffLine = Info

End Function


Sub Test_Online()
MsgBox TestOnOffLine
End Sub
 
Re : Vérifier connection réseau ou confirmation mail envoyé

Re,

Pour éviter, le tant redouté message de "deboguage" qui plait pas des masses aux utilisateurs...,

Bin normalement il faut faire de la gestion d'erreur et mettre un mot de passe pour éviter que l'utilisateur tombe en plein sur le code du style

Code:
'Code d'envoi Mail
...
  On Error GoTo erreur 
  .send
...

goto fin

erreur: 
MsgBox "Erreur contactez votre administrateur"

fin:
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

D
Réponses
6
Affichages
8 K
danbenzi
D
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…