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

Macros et VBA Excel Discussion :

Envoi de mail et Erreur Automation


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mars 2015
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte de base de données

    Informations forums :
    Inscription : Mars 2015
    Messages : 57
    Points : 26
    Points
    26
    Par défaut Envoi de mail et Erreur Automation
    Bonjour à tous,

    J'ai cherché un peu partout sur le net mais rien trouvé de concret pour me sortir d'affaire.

    J'ai récupéré sur le net la procédure suivante :

    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
     
    'Il faut activer la référence "Microsoft Outlook Library" Avant de lancer cette macro,
    ' Dans l'éditeur VBA: Faire Menu / Tools / Reference / Cocher "Microsoft Outlook Library"
    Sub Envoyer_Mail_Outlook()
    Dim ObjOutlook As New Outlook.Application
    Dim oBjMail
    Dim Nom_Fichier As String
     
        Set ObjOutlook = New Outlook.Application
        Set oBjMail = ObjOutlook.CreateItem(olMailItem)
    '---------------------------------------------------------
       'Ou bien entrer le path et nom du fichier autrement
       Nom_Fichier = "C:\Chemin\NomFichier.ext"
        If Nom_Fichier = "" Then Exit Sub
    '---------------------------------------------------------
         With oBjMail
            .To = "LeClient@gmail.com" ' le destinataire
           .Subject = "Ici c'est l'objet"          ' l'objet du mail
           .Body = "Ici le texte du mail "  'le corps du mail ..son contenu
           .Attachments.Add Nom_Fichier
           .Display  '   Ici on peut supprimer pour l'envoyer sans vérification
           .Send
        End With
        ObjOutlook.Quit
        Set oBjMail = Nothing
        Set ObjOutlook = Nothing
    End Sub

    Cependant, en arrivant sur l"instruction Set ObjOutlook = New Outlook.Application, j'ai un message d'erreur qui apparaît :

    Erreur d'exécution '-2147467229 (80004023)':
    Erreur Automation
    Erreur de l'installateur de logiciel Microsoft



    Quelqu'un aurat-il une idée pour me sortir de là.

    Merci d'avance pour vos contributions.

    Fabert

  2. #2
    Expert éminent

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 073
    Points : 9 853
    Points
    9 853
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    questions bêtes, mais tu as bien Outlook installé sur ton PC ? c'est bien le logiciel de messagerie par défaut ? tu as bien coché la référence Microsoft Outlook Library ?

    concernant la dernière question, tu n'as pas besoin des références Microsoft Outlook Library si tu travailles en Late Binding

    après, ton code crée une nouvelle instance Outlook, on pourrait pas travailler avec un Outlook déjà ouvert ? Ca restreint les erreurs d'automation.

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mars 2015
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte de base de données

    Informations forums :
    Inscription : Mars 2015
    Messages : 57
    Points : 26
    Points
    26
    Par défaut
    Oui j'ai Office 2013 complet qui est installé.

    J'ai bien coché dans Outils Références Microsoft Outlook 15.0 Object Library très exactement. Je suppose que c'est OK.

    En ouvrant préalablement Oulook 2013, j'ai malgré tout toujours le même message d'erreur.

    Une idée ?

    Fabert

  4. #4
    Expert éminent

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 073
    Points : 9 853
    Points
    9 853
    Billets dans le blog
    5
    Par défaut
    Avec Outlook ouvert, essaye comme ça :

    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
     
     
    Sub Envoyer_Mail_Outlook()
    Dim ObjOutlook As Object
    Dim oBjMail As Object
    Dim Nom_Fichier As String
     
        Set ObjOutlook = CreateObject("Outlook.Application")
        Set oBjMail = ObjOutlook.CreateItem(0)
    '---------------------------------------------------------
       'Ou bien entrer le path et nom du fichier autrement
       Nom_Fichier = "C:\Chemin\NomFichier.ext"
        If Nom_Fichier = "" Then Exit Sub
    '---------------------------------------------------------
         With oBjMail
            .To = "LeClient@gmail.com" ' le destinataire
           .Subject = "Ici c'est l'objet"          ' l'objet du mail
           .Body = "Ici le texte du mail "  'le corps du mail ..son contenu
           .Attachments.Add Nom_Fichier
           .Save
           .Display  '   Ici on peut supprimer pour l'envoyer sans vérification
           '.Send
        End With
        'ObjOutlook.Quit
        Set oBjMail = Nothing
        Set ObjOutlook = Nothing
    End Sub

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mars 2015
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte de base de données

    Informations forums :
    Inscription : Mars 2015
    Messages : 57
    Points : 26
    Points
    26
    Par défaut
    Merci.

    Je viens de tester et j'ai exactement le même message d'erreur au même endroit.


    Fabert

  6. #6
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    Dans Outlook, dans les options, as tu autorisé la prise en main par un application tiers?

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mars 2015
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte de base de données

    Informations forums :
    Inscription : Mars 2015
    Messages : 57
    Points : 26
    Points
    26
    Par défaut
    Je ne pense pas. Mais j'ai regardé dans Oulook et je ne trouve pas cette option. C'est sous quel onglet ?

    Merci.

  8. #8
    Invité
    Invité(e)
    Par défaut
    De mémoire sécurité voir sécurité des macros!

  9. #9
    Nouveau membre du Club
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mars 2015
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte de base de données

    Informations forums :
    Inscription : Mars 2015
    Messages : 57
    Points : 26
    Points
    26
    Par défaut
    Jusqu'ici je n'ai pas trouvé. J'ai examiné tout concernant la gestion de la confidentialité et sécurité.

    Fabert

  10. #10
    Expert éminent

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 073
    Points : 9 853
    Points
    9 853
    Billets dans le blog
    5
    Par défaut
    j'ai pas de client Outlook sous la main (pas avant 22h)

    de mémoire : Option / centre de gestion de la confidentialité / (Sécurité des macros ET Accès par programme)

    pour les macros, tu mets l'avant dernier niveau
    pour la sécurité des programmes, j'ai plus idée de ce qui est proposé

  11. #11
    Nouveau membre du Club
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mars 2015
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte de base de données

    Informations forums :
    Inscription : Mars 2015
    Messages : 57
    Points : 26
    Points
    26
    Par défaut
    Dans la sécurité, il y a 3 options mais qui chez moi sont toutes les trois grisées.

    1) M'avertir des activités douteuses lorsque mon logiciel antivirus est inactif (c'est cette option qui est sélectionnée mais grisée)
    2) Toujours m'avertir des activités douteuses
    3) ne jamais m'avertir des activités douteuses

    Côté excel, aucun changement, toujours impossible d'utiliser le code.

    Help !

    Merci.

    Fabert

  12. #12
    Expert éminent

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 073
    Points : 9 853
    Points
    9 853
    Billets dans le blog
    5
    Par défaut
    Si les options sont grisées, il y a deux causes différentes :

    - antivirus pas actif (tout du moins pas détecté comme actif)
    - restriction d'administrateur
    il y a une phrase en dessous des trois choix normalement, qui te donne le statut de l'antivirus : il indique quoi ?
    il est possible, si tu as un compte administrateur, de débloquer ça, il faut modifier une clé dans le registre (de mémoire, y'a le mot sécurity dedans ), fait une recherche rapide sur internet pour la retrouver

    mais ça ne doit pas empêcher ta macro de tourner, puisque quand tu vas faire ton .Send, tu auras un message de sécurité à valider si c'est la première case qui est cochée


    et sinon, pourquoi tu ne passes pas par une macro outlook directement, au lieu d'utiliser Excel ?
    à première vue, tu va récupérer un fichier pour le mettre en pièce jointe

    il reste possible, dans une macro outlook, d'écrire et de récupérer des données dans un classeur Excel, si tu en avais vraiment besoin

  13. #13
    Nouveau membre du Club
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mars 2015
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte de base de données

    Informations forums :
    Inscription : Mars 2015
    Messages : 57
    Points : 26
    Points
    26
    Par défaut
    Côté anti-virus, j'utilise Avast qui m'indique que tout est à jour et il est activé.

    La phrase indique bien "Statut de l'anti-virus : valide"


    Côté administrateur, j'utilise mon propre portable, donc je pense avoir tous les accès.

    Je vais essayer de trouver quelque chose concernant la clé de registre.

    Je préfère envoyer l'instruction au départ d'Excel vers Outlook pour des raisons de facilités.

    J'utilise un Userofrm qui offre plusieurs possibilités à l'utilisateur parmi lequelles d'envoyer un PDF par mail.

    Mais visiblement, j'ai toujours ce foutu message d'erreur sur Set ObjOutlook = CreateObject("Outlook.Application")

    Faudrait-il par hasard charger un correctif Outlook ?

    Fabert



    Merci quand même.

  14. #14
    Invité
    Invité(e)
    Par défaut
    ton code fonction,utilise le code de joe.levrai poste #4

  15. #15
    Nouveau membre du Club
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mars 2015
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte de base de données

    Informations forums :
    Inscription : Mars 2015
    Messages : 57
    Points : 26
    Points
    26
    Par défaut
    Oui, j'ai déjà essayé avec ce code, mais rien n'y fait.

    J'ai toujours ce foutu message

    Erreur d'exécution '-2147467229 (80004023)':
    Erreur Automation
    Erreur de l'installateur de logiciel Microsoft


    Fabert

  16. #16
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Fabert Voir le message
    Erreur d'exécution '-2147467229 (80004023)':
    Erreur Automation
    Erreur de l'installateur de logiciel Microsoft
    Bonjour,
    Tu vois bien ça n'a rien à voir avec vba, mais avec l'installation de Outlook!
    Peux tu envoyer /recevoir des mails?
    De toutes les façons c'est du côté d'Outlook!

  17. #17
    Nouveau membre du Club
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mars 2015
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte de base de données

    Informations forums :
    Inscription : Mars 2015
    Messages : 57
    Points : 26
    Points
    26
    Par défaut
    Oui, mon Outlook a toujours fonctionné parfaitement.

    Je l'utilise chaque jour sans problème.

    J'ai lu sur internet, autant sur des forums francophones qu'anglophones que ce problème survient chez de nombreux utilisateurs. Mais je n'ai toujours pas trouvé l'origine et la solution pour l'éliminer.

  18. #18
    Expert éminent

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 073
    Points : 9 853
    Points
    9 853
    Billets dans le blog
    5
    Par défaut
    Il y a peut être un composant défectueux ou non installé

    ce qui génère l'activation de l'installer ...

    On va quand même essayer d'épuiser toutes les solutions avant de te demander d'effectuer une réparation/réinstallation

    Est-ce que déjà, tu as possibilité de lancer une macro DANS Outlook ?

  19. #19
    Nouveau membre du Club
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mars 2015
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte de base de données

    Informations forums :
    Inscription : Mars 2015
    Messages : 57
    Points : 26
    Points
    26
    Par défaut
    Je ne l'ai jamais fais. A vrai dire, je ne savais même pas que c'était possible.

    Après quelques recherches, je n'ai pas trouvé.

    En tout cas, quelque chose m'étonne, dans les Options/Compléments,
    'Macros Complémentaires VBA pour Outlook' se trouve actuellement dans les compléments d'application inactifs.
    Lorsque je le sélectionne puis OK puis fermer/ouvrir Outlook, le complément revient dans les compléments inactifs.
    De même avec Windows Search Email Indexer qui lui se trouve dans les 'compléments désactivés'.
    Mais en sélectionnant ces 2 compléments puis OK, fermer/Ouvrir, ils reviennent sous la même rubrique.

    Ca viendrait de là? C'est grâve Docteur? ;-) Merci.

    Fabert

  20. #20
    Expert éminent

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 073
    Points : 9 853
    Points
    9 853
    Billets dans le blog
    5
    Par défaut
    on va essayer de le forcer

    1) Dans l'onglet développeur, tu actives les macros (menu sécurité des macros). Tu prend l'avant dernier choix (autoriser avec notification)
    2) tu ouvres la fenêtre VBA de Outlook : Alt+F11
    3) tu verras que le projet est différent de Excel, tu fais un clic droit sur "ThisOutlookSession" pour insérer un module
    4) tu écris une macro bidon dans ton module

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sub Toto
        Msgbox "Toto"
    End Sub
    tu lances la macro une fois

    tu fermes ton Outlook et tu aura normalement un message te proposant de sauvegarder ton projet, tu dis oui
    en rallumant Outlook, ça devrait être ok pour que le paramètre reste actif

    enfin ... tout est au conditionnel, à mon sens le problème initial ne vient pas de là ... mais sait-on jamais


    Si vraiment on s'en sort pas ... on fera l'inverse ! Outlook qui pilote Excel pour récupérer les infos et créer le mail !

Discussions similaires

  1. Envoi de mail impossible (erreur 16025/205)
    Par winser dans le forum Exchange Server
    Réponses: 16
    Dernier message: 19/05/2015, 13h57
  2. [VBA-E et Lotus]Erreur d'Automation lors de l'envoie du mail
    Par EvaristeGaloisBis dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 26/08/2008, 13h05
  3. envoi de mail et erreur 5.7.1 unable to relay
    Par phoenix75 dans le forum ASP.NET
    Réponses: 1
    Dernier message: 06/03/2008, 12h36
  4. [Windows 2003] Envoi de mail smtp, erreur
    Par Amiba dans le forum Windows Serveur
    Réponses: 6
    Dernier message: 22/11/2007, 12h23
  5. Envoie de mail via SMTP : erreur
    Par vince2005 dans le forum Modules
    Réponses: 5
    Dernier message: 29/03/2006, 16h29

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