Envoi de mail via outlook à partir d'un fichier Excel

Bonjour,

Je vous expose ma demande . Je dispose d'un tableau excel , le nombre de lignes est variable . Dans ce tableau se trouvent des adresses mail ainsi que d'autres informations que je souhaiterais avoir en objet dans le mail ou dans le corp du mail info 2 info.

Exemple :

Mail pour "adresse mail"

Objet : Objet

Bonjour "Prénom" "Nom"

je voudrais vous prévenir de "info 2" suite à "info 3" ( je prend une phrase complément au hasard )

je sais que cela peut se faire via du VBA mais je suis totalement ignare dans ce langage.

Pouvez vous m'aider s'il vous plait

38exemple.xlsx (8.79 Ko)

Bonjour,

J'aurais une petite question le texte à mettre dans le mail est fixe avec des notions à changer ou non.

J'aurais besoin de savoir si la partie rouge de la phrase doit être fixe dans la macro ou si vous voulez l'intégrer dans "info2" ou "info3"

je voudrais vous prévenir de "info 2" suite à "info 3"

Bonjour ,

Oui tout à fait ce sont des informations fixes ; les variables sont les données issues du fichier Excel

Bonjour

Voici une macro fonctionnelle chez moi.

Public longueur_tableau As Long
Public ligne As Long
Sub Worksheet_Change(ByVal Target As Range)
longueur_tableau = 2 'la valeur commence à la 2e ligne du tableau

    While Range("A" & longueur_tableau) <> "" 'recherche de longeur tant que la cellule A n'est pas vide
    longueur_tableau = longueur_tableau + 1 ' longueur de base +1
    Wend

    For ligne = 2 To longueur_tableau ' longueur prend en compte chaque ligne
    If Range("E" & ligne) <> "" And Range("F" & ligne) <> "" And Range("G" & ligne) = "" Then EnvoiMail
    Next ligne

End Sub
Sub EnvoiMail()

    Set OutApp = CreateObject("outlook.application")    'Ouverture application hotmail
    Set Outmail = OutApp.CreateItem(0)  'Ouverture nouveau mail

    With Outmail

        .To = Range("C" & ligne)
'        .CC = Range("B26")
        .Subject = Range("D" & ligne)
        .Body = "Bonjour, " & Range("B" & ligne) & " " & Range("A" & ligne) & vbCrLf & vbCrLf _
& "je voudrais vous prévenir de " & Range("E" & ligne) & " suite à " & Range("F" & ligne) & "." & vbCrLf & vbCrLf _
& "Merci beaucoup" & vbCrLf & vbCrLf _
& "Cordialement " & vbCrLf

'        .Attachments.Add ("rentrée ici le chemin de la pièce jointe")
        .Display    'affichage du mail
    End With
Range("G" & ligne) = Now
End Sub

J'ai rajouter une colonne G pour mentionnée que le mail est envoyé sinon à chaque changement tout les mails vont être renvoyés.

Voici un fichier ou tout est déjà intégrer en VBA

j'ai fait un copier/coller mais j'ai un soucis

Erreur d'exécution '1004'

Et quand je clique sur Débogage ca m'envoie sur cette ligne

.To = Range("C" & ligne)

Bonjour,

Pouvez vous poster le fichier pour que je puisse chercher d'où vient le problème.

Rechercher des sujets similaires à "envoi mail via outlook partir fichier"