Liste destinataire Outlook via Listbox

Bonjour tout le monde,

J'ai besoin de vous ! J'ai retourné mon problème dans tous les sens, essayé de trouver des solutions bis, mais je ne m'en sors pas depuis plusieurs semaines.

J'ai créé un Userform afin de choisir les clients à qui j'envoie une relance ; je les ajoute ou les retire d'une listbox.

Ce que je cherche a faire :

1/ [Objectif principal] Envoyer via outlook un mail de relance à tous les clients apparaissant dans la la listbox "LClient" (#Fail)

2/ Je suppose qu'il faudrait que je crée une autre listbox ou une textbox faisant apparaitre les adresses mails correspondantes à chaque client dans LClient (#Fail)

J'ai regardé plusieurs "tuto" pour envoyer les mails outlook, je pense que je pourrais m'en sortir ; là ou je bloque concrétement c'est : comment remplir .BCC dans ma macro d'envoi outlook avec toutes les adresses des clients concernés ?

Je vous joins mon fichier.

Je compte sur vous les superhéros

28classeur1-6.zip (927.74 Ko)

Bonsoir,

voyez si ce fichier peut orienter votre recherche :

@ bientôt

LouReeD

Merci LouReeD de ta réponse ;

Ton fichier est super, j'ai essayé de m'en inspirer pour l'adapter au mien ; Mais mon problème de retranscription des mails persiste.

En effet, il me faut vraiment sélectionner les nom clients et après que les adresses mails associés se retranscrivent donc.

Je pense que la clé se trouve dans cette partie de ton code mais je n'en ai pas compris la subtilité à adapter à mon code

Private Sub ListBox1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    ' Si la mise à jour de la liste n'est pas bonne, alors on va la mettre à jour
    If MAJ = False Then
        ' comme on va mettre la liste à jour on passe la variable à TRUE
        MAJ = True
        ' Dimensionnement de deux variable Integer
        Dim Blc As Integer, Cpt As Integer
        ' on en initialise une à 1
        Cpt = 1
        ' avec la ListBox
        With ListBox1
            ' on efface les données de la colonne A sur la totalité de cellule que contien d'ITEM la ListBox1
            Sheets("Feuil1").Range("A1:A" & .ListCount).ClearContents
            ' on boucle sur chaque Item de la ListBox1
            For Blc = 0 To ListBox1.ListCount - 1
                ' si l'Item est sélectionné
                If ListBox1.Selected(Blc) Then
                    ' on affiche la valeur dans la colonne A à la suite de ce qui est déjà écrit
                    Sheets("Feuil1").Range("A" & Cpt) = ListBox1.List(Blc)
                    ' on incrémente le numéro de ligne de la feuille pour écrire éventuellement la donnée suivante
                    Cpt = Cpt + 1
                End If
            Next
        End With
    End If
End Sub

Bonsoir,

je ne vois pas ce qu'il faut "lancer" pour arriver à ce que vous demandez... Je n'ai qu'un Userform mais rien pour le lancer...

@ bientôt

LouReeD

Oui je n'avais pas encore fait la macro puisque je plantais sur la construction de l'UserForm ;

Mais tiens si tu veux la version avec la macro montée pour lancer l'UserForm sur l'onglet voulu

21classeur1-6.zip (928.43 Ko)

Bonjour,

Houla... Ce n'est pas moi qui veut, mais c'est plus simple de voir ce que vous avez fais surtout que vous parlez d'intégration dans votre code... Donc c'est plutôt normal d'avoir votre code pour comprendre...

@ bientôt

LouReeD

Pour le moment il y a un code mais qui ne correspond qu'au "démarrage" de mon userform (chercher les données des listbox, ajouter/retirer des clients...)

Mais je n'arrive pas à construire la suite du code afin que VBA ailler chercher l'adresse mails de chaque client choisi pour qu'ensuite je puisse les intégrer à un code qui enverrait un mail outlook.

Je ne sais pas si j'ai assez bien exposé ma problématique...

Bonjour à tous,

En suivi de ton courrier privé > je peux regarder cela > mais le résultat ne sera que pour demain ...

ric

Ok ce serait super ; merci de ton aide.

J'attends avec impatience.

Bonjour à tous,

Un essai ...

Pour le code mail du module1 > j'ai repris le code que LouReeD te proposait aimablement ...

Je n'ai dépanné que :

- en passant > j'ai renommé les listbox > car CClient ça ne dit pas quel est ce type de contrôle est-ce > Lbox_CClients nous dit que c'est une listbox > c'est plus révélateur ...

- dans le userform > j'ai mis les listbox multicolonne avec email > si tu ne désires pas que le mail apparaisse > dans les propriétés des listbox > met la largeur de la 2e colonne à 0 ...
- le mail sera là, mais il ne sera pas visible dans la listbox ...

- le bouton check > nous amène dans " module1.Mail_Selection_Range_Outlook_Body1 " > j'ai désactivé le début du code jusqu'à la composition de la liste "Destinataire" pour BBC.

Si tu ne t'en sors pas avec le reste > l'on verra ...

ric

65classeur1-7.zip (931.70 Ko)

Houraaaaaaa !!

C'est tout bonnement super !!

J'essaie encore de comprendre ce que je n'arrivais pas à faire, mais à force de lecture je vais intégrer la chose !!

Je vous remercies LouReed et Ric de votre aide et implication !

Très bon week-end à vous, tout Jedi mérite repos.

Encore merci.

Olà,

Je chipote peut être mais j'ai deux autres questions :

- Sauriez-vous comment je pourrais retranscrire une TextBox comportant des sauts de ligne en corps de mail ? J'ai réussi à reporter le texte, mais les sauts de lignes sont perdus

- J'ai créais un modèle de mail outlook contenant une image que j'aimerais conserver à chaque mail, un genre d'en tête. Mais lors du lancement de la macro, l'image saute, comme remplacée par le texte (de la textbox justement)

Bonjour à tous,

Malheureusement, je ne suis pas suffisamment avancé dans le traitement de mails pour pouvoir donner une solution à ces deux demandes.

ric

Ah bon tant pis ;

Vous m'avez déjà bien débloqué

Rechercher des sujets similaires à "liste destinataire outlook via listbox"