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 d'un simple message à partir d'une macro EXCEL 2010 via outlook


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Novembre 2012
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2012
    Messages : 60
    Points : 49
    Points
    49
    Par défaut Envoi d'un simple message à partir d'une macro EXCEL 2010 via outlook
    Bonjour, ma macro bloque à cet endroit : Set Mail = Outlook.CreateItem(0)
    Quelqu'un peut m'aider?
    D'avance merci




    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
    'ENVOI MESSAGE VIA OUTLOOK
    Sub Envoi_Mail()
    Dim ObjOutlook As Object
    Dim Mail As Object
    Dim Objet As String
    Dim Corps As String
     
    Objet = "fichier quotidien"
    'Exemple de corps de texte avec texte et sauts de ligne
    Corps = "Bonjour, " & _
    vbCrLf & vbCrLf & _
    "Le fichier quotidien vient d'être déposé dans votre répertoire :" & _
    vbCrLf & vbCrLf & _
    "Bonne réception." & _
    vbCrLf & vbCrLf & _
    "L'équipe Pilotage." & _
    vbCrLf & vbCrLf & _
    "Envoi automatique." & _
    vbCrLf & vbCrLf
     
    Set ObjOutlook = CreateObject("Outlook.Application")
    Set Mail = Outlook.CreateItem(0)
     
    With Mail
    .To = "adresse mail à renseigner "
     
    .Subject = Objet
    .Body = Corps
    .Send
    End With
    End Sub

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

    Vous avez défini ObjOutlook comme l'objet Outlook. Il faut créer votre mail par rapport à cet objet :

    Essayez peut-être
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set Mail = ObjOutlook.CreateItem(0)
    sinon

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set Mail = ObjOutlook.CreateItem(olMailItem)
    Cordialement.
    Dernière modification par AlainTech ; 18/01/2016 à 00h25. Motif: Balises [code]

  3. #3
    Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Novembre 2012
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2012
    Messages : 60
    Points : 49
    Points
    49
    Par défaut C'est bon mais....
    Merci pour ta réponse.
    Le message est bien envoyé mais j'ai un message me signalant une tentative d'envoi de mail que je dois valider.
    Y-a-t-il une possibilité pour éviter ce message ?

  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
    Bonjour,

    c'est une sécurité Outlook, afin d'éviter aux macros malveillantes de piloter ton Outlook sans consentement

    tu as deux solutions à voir dans l'ordre :

    1) si cette fonction n'est pas désactivée :

    Menu "Fichier" >> "Option" >> "Centre de gestion de la confidentialité" >> "Paramètres du Centre de gestion de la confidentialité" >> "Accès par programme" >> cocher la case "Ne jamais m'avertir des activités douteuses"

    ATTENTION : ton Outlook n'est plus protégé contre les envois de mails non désirés, faut vraiment peser le pour et le contre (ou alors, remettre la sécurité en place après utilisation)

    2) simuler l'envoi du mail comme ceci :


    exemple tiré d'une de mes procédures utilisée quotidiennement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    With OutMail
            .to = "xx@xx.com"
            .Subject = LeTitre
            .Body = LeCorps
            .Display
            SendKeys "%{n}", True
    End With
    Je ne demande pas à VBA d'envoyer le mail. Je lui demande de l'afficher et ensuite je simule l'appuie sur le bouton "Envoyer"

    c'est pas terrible les simulations de touches ... mais dans ce cas précis c'est le "moins pire" pour moi (utilisation professionnelle avec blocage de modification du point numéro 1)

  5. #5
    Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Novembre 2012
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2012
    Messages : 60
    Points : 49
    Points
    49
    Par défaut On approche la perfection
    Tout fonctionne comme souhaité mais cette macro désactive la touche Verr Num.
    J'ai mis SendKeys "^{ENTER}" puis SendKeys "^{ENTER}", True mais rien n'y fait.
    Une dernière petite solution ?

  6. #6
    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
    Tiens c'est bizarre, j'ai jamais eu ce problème.

    il existe une instruction SendKeys dédiée pour la touche Verr Num

    essaye d'ajouter ça après le premier SendKeys :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SendKeys "{NUMLOCK}", True

  7. #7
    Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Novembre 2012
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2012
    Messages : 60
    Points : 49
    Points
    49
    Par défaut Génial, tout fonctionne à la perfection
    Génial, tout fonctionne à la perfection

    Un grand merci

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

Discussions similaires

  1. [XL-2003] activer Excel à partir d'une macro Excel
    Par didouss dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 27/09/2012, 10h56
  2. Mise en page à partir d'une macro excel
    Par lenul78570 dans le forum VBA Word
    Réponses: 3
    Dernier message: 24/02/2010, 22h53
  3. Enregistrement d'un fichier Word à partir d'une macro excel
    Par GTBouli dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 23/04/2008, 12h19
  4. Exécution d'un .Bat à partir d'une macro Excel
    Par om51ft dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 15/11/2007, 11h45
  5. Réponses: 3
    Dernier message: 20/07/2007, 08h58

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