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 :

Erreur lors de l'envoie d'un mail via Outlook


Sujet :

VBA Access

  1. #1
    Candidat au Club
    Inscrit en
    Novembre 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 7
    Points : 3
    Points
    3
    Par défaut Erreur lors de l'envoie d'un mail via Outlook
    Bonjour,

    J'utilise un code qui fonctionnait sous Office 2003. Cependant, depuis le passage sous Office 2010, ACCESS me renvoie une erreur lors de l'execution de la requete oEmail.send.
    J'ai bien la référence à la bibliotheque Office Outlook 14.0

    Merci pour votre aide

    Voici le code :
    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
    49
    50
    51
    Dim Destinataire As String
    Dim Sql_Mail As String
    Dim oEmail As Outlook.MailItem
    Dim appOutLook As Outlook.Application
    Dim oRst1 As DAO.Recordset
    Dim oDB As DAO.Database
     
    initerr = False
    Err_detect_mail (initerr)
     
    Set oDB = CurrentDb
     
    'Création de la requete de regrouppement
     
    Sql_Mail = "SELECT Tbl_LUP_EMAIL.adressemail, Tbl_LUP_EMAIL.Login, Tbl_LUP_EMAIL.Par FROM Tbl_LUP_EMAIL GROUP BY Tbl_LUP_EMAIL.adressemail, Tbl_LUP_EMAIL.Login, Tbl_LUP_EMAIL.Par HAVING (((Tbl_LUP_EMAIL.Par)=GetLoginUser()));"
     
    ' créer un nouvel item mail
     
    Set appOutLook = New Outlook.Application
    Set oEmail = appOutLook.CreateItem(olMailItem)
     
    ' les paramètres
     
    Set oRst1 = oDB.OpenRecordset(Sql_Mail)
     
    'Boucle sur chaque client et les ajoute au champ A du mail
    While Not oRst1.EOF
    moi = oRst1.Fields("Login")
    If moi <> GetLoginUser Then
    Destinataire = Destinataire & oRst1.Fields("adressemail") & "; "
    End If
    oRst1.MoveNext
    Wend
    If Destinataire <> "" Then
     
    'Supprime le ";" à la fin
    Destinataire = Left(Destinataire, Len(Destinataire) - 2)
     
    ' Mise en forme du mail
     
    'oEmail.To = Destinataire
    oEmail.Subject = "Portail Maintenance : Mise à jour de votre LUP"
    oEmail.Body = "Bonjour"
     
    ' envoie le message
    oEmail.Send
     
    ' détruit les références aux objets
    Set oEmail = Nothing
    Set appOutLook = Nothing
    End if

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Et quelle est cette erreur .

    Philippe

  3. #3
    Candidat au Club
    Inscrit en
    Novembre 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 7
    Points : 3
    Points
    3
    Par défaut
    Erreur 287
    Erreur définie par l'application ou par l'objet

    Si Outlook est déjà lancé, tout se passe bien, mais s'il est fermé, le message apparait.

    Sous ACCESS2003, même Outlook fermé ça fonctionnait

  4. #4
    Membre éclairé
    Homme Profil pro
    Regisseur
    Inscrit en
    Octobre 2006
    Messages
    475
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Regisseur
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Octobre 2006
    Messages : 475
    Points : 850
    Points
    850
    Par défaut
    Bonjour Zoethibault

    Dans la procedure que tu nous montres , "oEmail.To = Destinataire" est commenté . Donc ,sans destinataire ,ça marche moins bien ,je pense !

    A+

  5. #5
    Candidat au Club
    Inscrit en
    Novembre 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 7
    Points : 3
    Points
    3
    Par défaut
    Exact, mais c'est une erreur de copier coller.Pour faire des essais, le .TO est à mon adresse perso.Pour poser la question sur le forum, j'ai préféré l'enlevé et j'ai oublier de modifier la ligne.
    En vrai, la ligne n'est pas en commentaire.

  6. #6
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Test ce genre de code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    ' ouverture de outlook
        On Error Resume Next
        Set AppOutLook = GetObject(, "Outlook.Application")
        On Error GoTo 0
        If AppOutLook Is Nothing Then
            Set AppOutLook = CreateObject("Outlook.Application")
        End If
    Fonctionne que OutLook soit ouvert ou non.

    Philippe

  7. #7
    Membre éclairé
    Homme Profil pro
    Regisseur
    Inscrit en
    Octobre 2006
    Messages
    475
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Regisseur
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Octobre 2006
    Messages : 475
    Points : 850
    Points
    850
    Par défaut
    Bonjour tous les deux.

    Il vaut mieux placer le "End If" avant la destruction des objets ,puisqu'ils ont été créés avant ton "If" .
    Mais cela ne va pas régler ton problème .
    N'y as il pas trop de destinataire ? Essais avec un seul.
    "destinataire" est de type string . Tu depasses peut-etre ses capacité.
    Ne travaillant pas sur la version 2010 ,il y a peut-etre des options de sécurité ?
    A+

Discussions similaires

  1. erreur lors de l envoie d un mail
    Par eric-leg dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 26/02/2014, 13h28
  2. [PEAR][Mail] Prendre connaissance d'une erreur lors de l'envoi d'e-mail
    Par szambaux dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 06/03/2008, 13h00
  3. [PHPMailer] Erreur lors d'un envoi d'un mail avec pièce jointe à destination de gmail
    Par arezki76 dans le forum Bibliothèques et frameworks
    Réponses: 15
    Dernier message: 14/08/2007, 18h18
  4. [Mail] Erreur lors de l'envoi d'e-mail sous PHP
    Par lylyagloire dans le forum Langage
    Réponses: 1
    Dernier message: 31/07/2007, 22h37
  5. [PhpMailer] Message d'erreur lors de l'envoi d'un mail
    Par Pepito dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 25/04/2007, 17h25

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