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

VBA Access Discussion :

Envoi de mail depuis VBA access


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 94
    Par défaut Envoi de mail depuis VBA access
    Bonjours à tous

    Voici mon probléme :
    J'aimerais intégrer dans un formulaire un bouton permettant d'envoyer un mail via outlook. le bouton doit justre préremplir les champs du mail et l'utilisateur n'aura plus qu'à envoyer.
    Aprés quelque recherche, j'ai trouver le code suivant qui utilise une référence outlook de vba (microsoft outlook 11.0) :

    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
    Sub UseOutlook()
         Dim Mail_Outlook As Object
         Dim Message_Outlook As Object
         Dim Body_mail As String
         Set Mail_Outlook = CreateObject("Outlook.Application")
         Set Message_Outlook = Mail_Outlook.CreateItem(0)
         Message_Outlook.To = "pev15@hotmail.com"
         Message_Outlook.Cc = " destinataire "
         Message_Outlook.Bcc = " destinataire "
         Message_Outlook.Subject = " Sujet du mail "
         Body_mail = "Contenu "
         Body_mail = Body_mail & Chr(13) & Chr(10) '
         Body_mail = Body_mail & "Contenu.."
         Message_Outlook.body = Body_mail
         Message_Outlook.send
         Set Mail_Outlook = Nothing
    End Sub
    La compilation ne pose pas de probléme, mais à l'éxécution le debug se bloque a la ligne en gras
    Je ne comprend pas d'ou vient le probléme, j'ai l'impression que l'objet mail et mal instancié mais pourtant il figure bien dans l'explorateur d'objet de mon environnement VB.
    a terme je veux aussi mettre dans les destinataires le résultat d'une requete sur une de mes tables (avec un record set) mais pas la peine d'implémenter ça si je ne sais pas faire fonctionner le code avec un seul destinataire.

    Merci d'avance.

  2. #2
    Membre averti

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 38
    Par défaut
    En mettant juste
    Dim Message_Outlook
    dans la declaration ?

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 94
    Par défaut
    Bonjour et merci pour ta réponse.

    j'ai essayé ta solution mais ça ne change rien. L'erreur est tourjours la.

  4. #4
    Membre averti

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 38
    Par défaut
    C'est quoi le message d'erreur ?

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 94
    Par défaut
    Il s'agit d'une erreur d'éxécution :

    Dans une boite de dialogue j'ai l'erreur d'éxécution '-2147287037 (80030003) : echec de l'opération.

    La boite de dialogue m'invite en mode débug et me surligne la ligne suivante :
    Set Message_Outlook = Mail_Outlook.CreateItem(0)

    en mettant le pointeur de souris sur la ligne, l'info bull m'affiche :
    Message_Outlook = nothing

  6. #6
    Membre averti

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 38
    Par défaut
    Bizarre...
    Dans ton gestionnaire de tache, tu en as pas plusieurs des Outlook ouvert ?
    Moi avant d'attaquer la creation du mail, je passe dans cette fonction :

    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
    Function Outlook_LOGIN() As Boolean
    Dim MAILBOX_STATE, Folder
        On Error GoTo Outlook_Login_Err
        Set Outlook = GetObject(, "Outlook.Application")
        If Outlook Is Nothing Then
    recup_err:
            Set Outlook = CreateObject("Outlook.Application")
            Set MAPI = Outlook.GetNamespace("MAPI")
            MAILBOX_STATE = 200
            Set Folder = MAPI.GetDefaultFolder(6) 
            Folder.Display
        End If
     
        Exit Function
    Outlook_Login_Err:
    If err.Number <> 0 Then
        If err.Number = 429 Then
            GoTo recup_err
        End If
        Exit Function
    End If
    End Function

Discussions similaires

  1. Envoi de mail depuis access avec retour sur actions
    Par clickandgo dans le forum VBA Access
    Réponses: 1
    Dernier message: 25/04/2012, 11h03
  2. [AC-2003] Outil d'envoi de mail depuis Access
    Par Kloun dans le forum Access
    Réponses: 3
    Dernier message: 28/04/2009, 10h53
  3. Envoi de mails depuis Lotus notes via Access
    Par samia21 dans le forum IHM
    Réponses: 8
    Dernier message: 26/05/2008, 08h42
  4. [VBA] Gérer la taille des cellules lors de l'envoi de mail depuis excel
    Par Arschney dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 06/06/2007, 10h58
  5. envoyer un mail depuis VBA access
    Par romrai dans le forum Access
    Réponses: 10
    Dernier message: 06/03/2006, 13h51

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