VBA ENVOIE EMAIL PAR EXCEL+VBA SUPP DOUBLON

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

jeremy6812

XLDnaute Nouveau
Bonjour à tous et vraiment merci d'avance pour votre aide et soutien 🙂 j 'ai déjà essayer beaucoup de chose et trouver beaucoup d'astuce ici grace a vous mais la je suis perdu....

j'ai besoin de 2 codes VBA et je ne sais pas si c'est possible en tous cas après plusieurs jours acharnée rien de ce que je fais ne fonctionne...

1er:
J'aimerais que les doublons de la colonne " VL_DOCNUM " ce supprime automatiquement si mes données en rajoutes( ce qui arrive quand j actualise ma base )

2eme problèmes et pas des moindre

j'aimerais que pour chaque ligne un email s'envoie sur Outlook a savoir

email du destinataire ( colonne P " email client "
En objet du mail ( colonne R " objet "
En texte du mail colonne S T ET U TEXTE 1 TEXTE 2 ET TEXTE 3 DONC et le texte 3 est diffèrent pour chaque destinataires comme vous pouvez le voir

je vous joint le fichier en espérant que quelqu'un ici peux m'aider merci milles fois a tous
 

Pièces jointes

voila.. c'est mieux comme ca ;-)

Pour la suppression de doublon, utilise ce code..
Code:
Sub SupDoublons()
Application.ScreenUpdating = False
For i = Range("E" & Rows.Count).End(xlUp).Row To 2 Step -1
    If Range("E" & i) = Range("E" & i - 1) Then
        Rows(i).EntireRow.Delete
    End If
Next i
Application.ScreenUpdating = True
End Sub

Pour l'envoi de mail.. je ne connais pas du tout..
 
Re

avec le lien de Gosslien, que je salue au passage
voir le code épuré suivant..pas testé car pas de Outlook chez moi
Code:
Sub EnvoiMail()
    Dim OutApp As Object
    Dim OutMail As Object
    Dim mailAddress As String
   
    'ouvre outlook
    Set OutApp = CreateObject("Outlook.Application")

    'on désactive les évènements et rafraichissement-->permet d'accelerer
    With Application
        .EnableEvents = False
        .ScreenUpdating = False
    End With

    'pour chaque ligne à partir de 3 (la 2 étant les entetes)
    For i = 3 To Range("A" & Rows.Count).End(xlUp).Row
        'on récupère l'adresse mail
        mailAddress = Range("C" & i)
        Message = Range("S" & i) & " " & Range("T" & i) & "ET " & Range("U" & i)
       
        'on crée le mail
        Set OutMail = OutApp.CreateItem(0)
        With OutMail
            .To = mailAddress
            .Subject = "Test mail"
            .Body = Message
            .Display  'Or use Send
        End With
                   
        'on libère la mémoire
        Set OutMail = Nothing
    Next i
   
'on nettoie

    Set OutApp = Nothing
    With Application
        .EnableEvents = True
        .ScreenUpdating = True
    End With
End Sub
 
RE Salut
Donc je colle le message que je viens de mettre dans son ancien POST maintenant ici :

D'accord avec Vgendron , j'ai des messages pour mise à jour de bases ......on les a pas ?
sinon je peux t'assurer qu'en tapant"envoi mail auto via VBA" sur google tu vas tomber sur une dizaine d'exemples
avec paramétrages des champs ...etc . J'ai un type mais c'est en major. avec des cases à cocher et ma feuille excel est transmise auto
Sinon cela m'a pris 30 sec sur Google : http://codes-sources.commentcamarch...r-oulook-express-ou-modzilla-thunderbird-ou-d
J'ai aussi testé en 30 sec. cela me parait TOUT simple à adapter dans ton cas
Bon courage
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
955
Réponses
3
Affichages
490
Retour