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 :

[VBA-E] Insertion d'un saut de ligne dans un mail automatique


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    129
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 129
    Points : 59
    Points
    59
    Par défaut [VBA-E] Insertion d'un saut de ligne dans un mail automatique
    Bonjour,

    Voila, je cherche a ecrire un mail automatique avec outlook depuis Excel avec en debut de courrier : bonjour X, puis un saut de ligne et la suite du corps de texte.
    Pour se faire j'ai essayé via les caractères de retour chariot :
    - Chr(13) + Chr(10) mais aussi par
    - vbCrLf ou
    - vbNewLine

    mais rien n'y fait, je n'ai toujours pas de saut de ligne ... Quelqu'un a une idée ?

    Merci d avance

  2. #2
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Points : 4 674
    Points
    4 674
    Par défaut
    mais rien n'y fait, je n'ai toujours pas de saut de page ... Quelqu'un a une idée ?
    Saut de ligne ou saut de page ?
    faut savoir ...

  3. #3
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 327
    Points
    24 327
    Par défaut
    As-tu essayé VbLf?

  4. #4
    Expert confirmé Avatar de illight
    Homme Profil pro
    Analyste décisionnel
    Inscrit en
    Septembre 2005
    Messages
    2 342
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Analyste décisionnel
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 342
    Points : 4 299
    Points
    4 299
    Par défaut
    En allant sur l'aide :

    vbCrLfChr(13) + Chr(10) Combinaison des caractères de retour chariot et de saut de ligne

    vbCrChr(13) Caractère de saut de paragraphe

    vbLfChr(10) Caractère de saut de ligne

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    129
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 129
    Points : 59
    Points
    59
    Par défaut
    Merci pour votre aide, cela dit, ces codes ne marchent pas dans le corps du Msg du mail.
    En effet, mon texte ne prend pas en compte le saut de ligne, il ecrit mon mail tout collé :

    "Bonjour X, voici le fichier d'analyse..."

    Avez vous 1 idée ?

    Merci d avance

  6. #6
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 327
    Points
    24 327
    Par défaut
    Quel est le format du mail?

    Plain Text ou HTML?

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    129
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 129
    Points : 59
    Points
    59
    Par défaut
    C'est du Outlook classique, en fait quand je lance ma macro, j'ai Outlook qui se lance et le mail qui est ecrit, mais toujours pas de saut de ligne apres bonjour (en gras ci-dessous), voici le code ci dessous :

    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
    Sub Envoimail(etude)
    prenom = Range("K" & etude + 4)
    Application.ScreenUpdating = False
    Dim Subj As String
    Dim EmailAddr As String
    Dim Recipient As String
    Dim Fichier As String
    Dim Msg As String
    Dim HLink As String
    Subj = "Analyse " & Range("D" & etude + 4) & " éffectuée"
    EmailAddr = "" & Range("I" & etude + 4) & "@XXX.com"
    Msg = "Bonjour " & prenom & ", " & vbLf & "L'analyse est faite"
    HLink = "mailto:" & EmailAddr & "?"
    HLink = HLink & "subject=" & Subj & "&"
    HLink = HLink & "body=" & Msg
    ActiveWorkbook.FollowHyperlink HLink
    Sleep (20)
    SendKeys "%s", True
    Merci d'avance

  8. #8
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 327
    Points
    24 327
    Par défaut
    Citation Envoyé par AlainTech
    Quel est le format du mail?

    Plain Text ou HTML?
    Tu n'as pas répondu à la question.

  9. #9
    Expert confirmé Avatar de illight
    Homme Profil pro
    Analyste décisionnel
    Inscrit en
    Septembre 2005
    Messages
    2 342
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Analyste décisionnel
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 342
    Points : 4 299
    Points
    4 299
    Par défaut
    t'a essayé ç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
    Sub Envoimail(etude)
    prenom = Range("K" & etude + 4)
    Application.ScreenUpdating = False
    Dim Subj As String
    Dim EmailAddr As String
    Dim Recipient As String
    Dim Fichier As String
    Dim Msg As String
    Dim HLink As String
    Subj = "Analyse " & Range("D" & etude + 4) & " éffectuée"
    EmailAddr = "" & Range("I" & etude + 4) & "@XXX.com"
    Msg = "Bonjour " & prenom & ", " & vbCrLf & "L'analyse est faite"
    HLink = "mailto:" & EmailAddr & "?"
    HLink = HLink & "subject=" & Subj & "&"
    HLink = HLink & "body=" & Msg
    ActiveWorkbook.FollowHyperlink HLink
    Sleep (20)
    SendKeys "%s", True

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    129
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 129
    Points : 59
    Points
    59
    Par défaut
    Oui, j'ai essayé vbCrLf et rien ne change, toujours pas de saut de ligne sous Outlook.

    Je ne sais pas ce qu'est ce format (si ce n'est le format de mail type Outlook), j dirai plus plain text que HTML...

    Vous avez une autre solution ?

    Merci d'avance

  11. #11
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 327
    Points
    24 327
    Par défaut
    Citation Envoyé par alex_95
    Pour se faire j'ai essayé via les caractères de retour chariot :
    - Chr(13) + Chr(10) mais aussi par
    - vbCrLf ou
    - vbNewLine
    Faut apprendre à lire...

  12. #12
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 327
    Points
    24 327
    Par défaut
    Citation Envoyé par alex_95
    Oui, j'ai essayé vbCrLf et rien ne change, toujours pas de saut de ligne sous Outlook.

    Je ne sais pas ce qu'est ce format (si ce n'est le format de mail type Outlook), j dirai plus plain text que HTML...

    Vous avez une autre solution ?

    Merci d'avance
    Pas tant que tu ne dis pas quel est le format...

    Quand tu reçois un des mails envoyé de cette façon, tu peux voir (dans la barre de titre) si c'est de l'HTML ou du texte pur.

    Si c'est de l'HTML, il faudra insérer des <br> à la place des CrLf...

  13. #13
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    129
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 129
    Points : 59
    Points
    59
    Par défaut
    Ok, merci de l'explication, c'est donc du texte pur.

    Tu penses qu'on peut faire quoi ?

  14. #14
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 327
    Points
    24 327
    Par défaut
    Je viens d'analyser un fichier message d'Outlook et c'est bien [0D][0A] (CrLf) qui sert de retour à la ligne.

    Aucune idée du pourquoi il ne le prend pas à la création par VB.

    Désolé, pas de piste pour l'instant.

  15. #15
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    129
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 129
    Points : 59
    Points
    59
    Par défaut
    Et peut t'on ecrire au format HTML sous Outlook ???

  16. #16
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Points : 20 147
    Points
    20 147
    Par défaut
    bonsoir


    tu peux essayer cette synthaxe (il faudra peut etre adapter le SendKey )


    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
     
    Sub Envoimail(etude)
    Dim Subj As String
    Dim EmailAddr As String
    Dim Recipient As String
    Dim Fichier As String
    Dim Msg As String
    Dim HLink As String
     
    prenom = Range("K" & etude + 4)
     
    Subj = "Analyse " & Range("D" & etude + 4) & " effectuée"
    EmailAddr = "" & Range("I" & etude + 4) & "@XXX.com"
     
    Msg = "Bonjour " & prenom & ", " & vbCrLf & "L'analyse est faite"
    HLink = "mailto:" & EmailAddr & "?"
    HLink = HLink & "subject=" & Subj & "&"
    HLink = HLink & "body=" & Msg
     
    Shell "C:\Program Files\Outlook Express\msimn.exe " & "/mailurl:mailto:" & HLink
     
    Sleep (20)
    SendKeys "%s", True
    End Sub

    bonne soiree
    michel

  17. #17
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    129
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 129
    Points : 59
    Points
    59
    Par défaut
    Bonsoir Michel,

    Merci pour ta reponse, cela dit, y a un souci, je recois un mail du Internet Mail Delivery Service me mettant qu'il y a eu un pb lors de l'envoi du mail.

    En effet, j'ai en doc joint le mail qu'il aurait du envoyer... avec en effet le saut de ligne mais par contre ca cloche qq part... mais l'objet du mail recu est :
    Delivery Notification: Delivery has failed, accompagné pour le corps du mail d'erreurs...

    Peux tu m'aider ?
    Merci d'avance

  18. #18
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    129
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 129
    Points : 59
    Points
    59
    Par défaut
    J'ai trouvé la solution, en fait il suffit de supprimer le mailto dans
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Shell "C:\Program Files\Outlook Express\msimn.exe " & "/mailurl:mailto:" & HLink
    en fait par rapport au code ecrit au dessus, il faut ecrire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Shell "C:\Program Files\Outlook Express\msimn.exe " & "/mailurl:" & HLink
    Car le mailto faisait doublon avec celui défini précédement dans :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    HLink = "mailto:" & EmailAddr & "?"

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

Discussions similaires

  1. Empêcher les sauts de lignes dans un mail
    Par Zebulon777 dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 22/08/2014, 07h48
  2. Insertion d'un saut de ligne dans LONG_RAW
    Par nabla23 dans le forum PL/SQL
    Réponses: 2
    Dernier message: 17/01/2013, 15h08
  3. Saut de Ligne dans un mail
    Par naroco dans le forum Langage
    Réponses: 3
    Dernier message: 29/12/2011, 11h38
  4. saut de ligne dans un mail
    Par lolothom dans le forum Access
    Réponses: 5
    Dernier message: 12/02/2011, 05h37
  5. Réponses: 9
    Dernier message: 23/05/2005, 09h35

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