IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

IHM Discussion :

Erreur envoi mail [AC-2013]


Sujet :

IHM

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2011
    Messages
    398
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 398
    Par défaut Erreur envoi mail
    Bonjour,

    j'ai crée un formulaire de saisie avec un bouton qui envoie un mail automatiquement par rapport à une adresse mail saisie.
    J'ai créé un message pour confirmer que le mail est envoyé.
    Si je saisie une adresse mail avec une erreur de frappe j'aimerai un message pour me confirmer que le message n'a pas été envoyé.
    Ci-dessous le message d'erreur qui apparaît

    Nom : Annotation 2020-02-17 171911.png
Affichages : 134
Taille : 6,3 Ko

    Je met mon code VBA pour la procédure d'envoie du mail

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    Private Sub Mail_Click()
    Dim OutApp As Object
    Dim OutMail As Object
    Dim strMsg As String
    Dim strDest As String
     
    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(0)
     
    strMsg = "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>"
    strMsg = strMsg & "<html xmlns='http://www.w3.org/1999/xhtml'>"
    strMsg = strMsg & "<body>"
    strMsg = strMsg & "<p>Bonjour,"
    strMsg = strMsg & "<table width='800px' border='1' cellpadding='0'>"
    strMsg = strMsg & "<tr>"
    strMsg = strMsg & "<td ><p align='center'><strong>Date</strong></p></td>"
    strMsg = strMsg & "<td ><p align='center'><strong>Air Waybill</strong></p></td>"
    strMsg = strMsg & "<td ><p align='center'><strong>Expéditeur</strong></p></td>"
    strMsg = strMsg & "<td ><p align='center'><strong>Destinataire</strong></p></td>"
    strMsg = strMsg & "<td ><p align='center'><strong>Nombre de colis</strong></p></td>"
    strMsg = strMsg & "<td ><p align='center'><strong>Format colis</strong></p></td>"
    strMsg = strMsg & "<td ><p align='center'><strong>Localisation</strong></p></td>"
    strMsg = strMsg & "<td ><p align='center'><strong>Commentaires</strong></p></td>"
    strMsg = strMsg & "</tr>"
    strMsg = strMsg & "<tr>"
    strMsg = strMsg & "<td><p align='center'>" & Format(txtDatederéception, "dd/MMM/yyyy") & "</p></td>"
    strMsg = strMsg & "<td><p align='center'>" & txtNuméroduColis & "</p></td>"
    strMsg = strMsg & "<td><p align='center'>" & txtExpéditeur & "</p></td>"
    strMsg = strMsg & "<td><p align='center'>" & txtDestinataire & "</p></td>"
    strMsg = strMsg & "<td><p align='center'><strong>" & Format(txtNombredecolis) & "</strong></p></td>"
    strMsg = strMsg & "<td><p align='center'>" & txtFormatColis & "</p></td>"
    strMsg = strMsg & "<td><p align='center'>" & txtLocalisation & "</p></td>"
    strMsg = strMsg & "<td><p align='center'>" & txtCommentaire & "</font></p></td>"
    strMsg = strMsg & "</tr>"
    strMsg = strMsg & "</table>"
     
    strDest = txtemail
     
    With OutMail
     .To = strDest
     .Subject = "..."
     .HTMLBody = strMsg
     .Send
    End With
    Set OutMail = Nothing
    Set OutApp = Nothing
    MsgBox "Votre mail a été envoyé", vbInformation + vbOKOnly, "confirmation envoie"
    End Sub

  2. #2
    Expert confirmé Avatar de hyperion13
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 274
    Par défaut
    Salut
    Peut-être une piste
    De L26 à L33, tu as des variables. Mais tu ne déclares pas leur type respectif en L2/L5
    Dim txtDatederéception As Date

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2011
    Messages
    398
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 398
    Par défaut
    Bonjour hyperion13

    le code fonctionne. Je voudrai personnaliser le message d'erreur quand il y a une erreur de syntaxe sur l'adresse mail.
    exemple "erreur d'adresse mail" avec bouton OK au lieu de "erreur d’exécution...".
    j'avais pensé à çà
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    If Err.Number = 2147467259 Then 
     MsgBox "erreur d'adresse mail", vbInformation + vbOKOnly, "envoie annulé" 
     End If
    Fonctionne pas. OUTLOOK s'ouvre avec la mauvaise dresse et quand je referme outlook j'ai le message "mail envoyé".

  4. #4
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 848
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 848
    Par défaut
    Bonjour,

    Pour information, je te conseille la lecture de cet article qui parle de la gestion des erreurs : https://mhubiche.developpez.com/Access/cours/erreurs/

    En gros, pour gérer (correctement) les erreurs, il faut utiliser l'instruction "ON ERROR GOTO ettiquette"
    en pseudo-code :
    ...
    ON ERROR GOTO ettiquette

    ... ton code ...

    après tout le code la gestion des erreurs :
    ettiquette :
    ... ici tu mets les différents cas d'erreurs et la suite que tu choisie pour ton programme.
    Cordialement.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2011
    Messages
    398
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 398
    Par défaut
    Bonjour madefemere
    oui j'avais lu cet article mais il n'explique pas en détails comment utiliser ON ERROR GOTO ettiquette.
    Peux-tu m'expliquer cette fonction en détail ?
    Merci

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2011
    Messages
    398
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 398
    Par défaut
    En cherchant j'ai trouvé
    Voici mon code final
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub Mail_Click()
    On Error GoTo ErrHandler
    Mon code...
    Exit Sub
    ErrHandler:
    MsgBox "Erreur Adresse mail", vbInformation + vbOKOnly, "mail non envoyé"
    End Sub
    Finalement c'était assez simple.
    Merci à vous 2

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. erreur envoi mail avec CDO
    Par bambino13 dans le forum ASP
    Réponses: 2
    Dernier message: 26/08/2009, 16h19
  2. [MySQL] Erreur envoi mail
    Par zebu238 dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 27/02/2009, 20h35
  3. Erreur envoi mail avec phpmailer (fichier joint)
    Par rhadien dans le forum Langage
    Réponses: 1
    Dernier message: 02/07/2008, 10h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo