Envoi mail avec Excel

Bonsoir le forum,

voila je cherche un moyen d'envoyer un mail à une liste de personnes qui se trouvent sur mon fichier, et de mettre dans chaque mail, les renseignements correspondants à chaque personne.

L'envoi doit se faire uniquement si j'ai dans la dernière colonne "Retenu", si la colonne est vide, ne pas envoyé de message.

Je ne veux pas de pièce jointe, mais un texte prédéfini reprenant les infos de chaque colonne.

J'utilise Outlook comme outil de messagerie.

Merci pour votre aide si précieuse.

Bonne soirée.

Laurent

11classeur1.xlsx (10.08 Ko)

Bonjour,

quelques questions préalables :

  • je ne vois pas les adresses mail dans le fichier, est-ce que mettre nom et prénom en destinataire te suffit ? outlook ira chercher dans ton carnet
  • veux-tu un email par personne ou global envoyé à toutes les personnes en même temps ?
  • si un email par personne, tu veux toutes les envoyer en un clic ?

Bonjour Steelson,

Oui Outlook ira chercher dans mon carnet d'adresse en fonction des noms.

Oui je souhaite un mail par personne et surtout pas global, car j'ai des infos qui seront perso.

Et oui, ça serait le top de les envoyer tous d'un seul coup.

Merci pour ton aide.

Laurent

Je vais m'y mettre ce soir ... sauf si qqun te propose d'ici une solution.

Dernière question : as-tu une signature par défaut lorsque tu envoies les messages et que tu souhaites conserver ?

  • si NON : c'est plus simple !
  • si OUI c'est possible en jouant sur les sendkeys !

super je te remercie par avance...

et non, je ne souhaite pas de signature

Merci pour ton aide.

Laurent

Essaie ceci

Désolé, je n'ai pas pu testé car je n'ai pas outlook à la maison !

Option Explicit
Sub envoi()

Dim messagerie As Object
Dim email As Object
Dim cel As Range
Dim texte As String

Set messagerie = CreateObject("Outlook.Application")

For Each cel In Range("A2:A" & Range("A1").End(xlDown).Row)
    If cel.Offset(0, 7) = "retenu" Then

        Set email = messagerie.CreateItem(0)

        With email
            .to = cel
            .Subject = "mettre ici le titre du mail"
            .body = Cells(1, 2) & " = " & Cells(cel.Row, 2) & Chr(10) & _
                    Cells(1, 3) & " = " & Cells(cel.Row, 3) & Chr(10) & _
                    Cells(1, 4) & " = " & Cells(cel.Row, 4) & Chr(10) & _
                    Cells(1, 5) & " = " & Cells(cel.Row, 5) & Chr(10) & _
                    Cells(1, 6) & " = " & Cells(cel.Row, 6) & Chr(10) & _
                    Cells(1, 7) & " = " & Cells(cel.Row, 7) & Chr(10)
            .ReadReceiptRequested = True
            .display ' à remplacer par .send si ok
        End With

        Set email = Nothing

    End If

Next cel

Set messagerie = Nothing

End Sub
36envoi-mailing.xlsm (17.75 Ko)

EXCELLENT !!!

C'est exactement ce que je souhaitais ...

Je te remercie vraiment pour ton aide... navré que tu ai du bosser hier soir et que du coup t'as raté une super émission à la TV ... The Voice ...

Plus sérieusement, merci vraiment sympa de ta part !

Passe un bon dimanche et a une prochaine fois ...

Laurent

lolo69490 a écrit :

... navré que tu ai du bosser hier soir et que du coup t'as raté une super émission à la TV ... The Voice ...

Ravi que cela convienne, car je n'avais pas pu tester les messages multiples !

Et depuis les départs de Yoan, Mathilde, Battista et autres, ils n'avaient conservé que les moyens ! donc plus aucun intérêt, pas aussi motivant que de venir titiller les problèmes exposés ici

Rechercher des sujets similaires à "envoi mail"