Extraction d'e_mails pour envoi

  • Initiateur de la discussion Initiateur de la discussion rapha5
  • Date de début Date de début

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 !

R

rapha5

Guest
Bonjour,
Je suis novice en la matière et n'ai trouvé que des niveaux avancés d'utilisation excel sans trouver réponse à ma question. Je cherche simplement à extraire des adresses e-mails contenues dans une colonne de mon fichier excel pour envoyer un mail à toutes ces adresses en Cci. Quelle manipulation dois je effectuer?

Merci
 
Re : Extraction d'e_mails pour envoi

Bonjour,

Un fichier est intéressant pour travailler et être sûr de ce que l'on fait.

Sinon pour l'extraire : (Une cellule peut contenir : 32 767 Caractères)

Normalement ceci fait l'affaire :
VB:
Sub ExtractEmail()
Dim Colonne As Range, Cel As Range, Liste As String

Set Colonne = Sheets("Feuil1").Range("F:F").SpecialCells(xlCellTypeConstants, 2)

For Each Cel In Colonne
    Liste = Liste & Cel & ","
Next Cel

'Copy la liste dans une cellule
With Sheets("Feuil1").Range("A1")
    .Value = Liste
    .WrapText = True
    .Offset(1) = "Nbrs Car : " & Len(Liste)
End With
End Sub

Si tu devait dépasser ce nombre de caractère (pour 2007, les autres je ne sait pas), il suffirait d'adapter en plusieurs cellules.

Tu peux aussi la mettre direct dans outlook mais je ne connais pas le code.

Il te suffit de copier la cellule dans le champ que tu veux.


On peux aussi mettre cette liste dans le presse-papier et tu n'aurait plus qu'à coller, il faut juste activer une référence.
 
Dernière édition:
Re : Extraction d'e_mails pour envoi

Bonjour rapha5 et bienvenue!

Je ne saurais trop te recommander de prendre le temps de lire Lien supprimé, puis de vérifier si ta demande est aussi conforme que possible à ce que tu auras lu.
Note bien que personne ne te reprochera une imprécision ou un petit oubli, mais il faudrait que tu nous donnes un peu de matière, si tu veux qu'on puisse proposer l'une ou l'autre piste.

A bientôt,

Edit: bonjour Kiseki
 
Re : Extraction d'e_mails pour envoi

Bonjour Modeste.

Quand tu à ton classeur ouvert tu fait ALT+F11, ajoute un MODULE, dans ce MODULE colle ceci :
VB:
Function RegroupMail(Plage As Range) As String
Dim Cel As Range
For Each Cel In Plage
    If Len(Cel) > 4 Then RegroupMail = RegroupMail & Cel & ","
Next Cel
If Len(RegroupMail) > 32767 Then RegroupMail = "!!!Utiliser une plage plus courte!!!"
End Function
[EDIT]Plus court et plus rapide.
Ensuite enregistre en tant que fichier prenant en compte les macros (.xlsm).

Tu ferme et réouvre ton fichier, active les macros une fois ouvert (je te laisse te renseigner à ce sujet, facile à trouver)
Ce lien n'existe plus

Ensuite sur ta feuille il te suffit de mettre la fonction : (tu peux renvoyer directement à la ligne dans la cellule pour que ça ne parte pas en longueur.
=RegroupMail(F2:F5)
 

Pièces jointes

Dernière édition:
Re : Extraction d'e_mails pour envoi

Beaucoup plus rapide en utilisant un tableau (la différence est surtout importante pour de grande plage).

VB:
Function RegroupMail(Plage As Variant) As String
Dim Text As Variant
For Each Text In Plage
    If Len(Text) > 4 Then RegroupMail = RegroupMail & Text & ","
Next Text
If Len(RegroupMail) > 32767 Then RegroupMail = "!!!Utiliser une plage plus courte!!!"
End Function
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

E
Réponses
1
Affichages
1 K
M
Réponses
4
Affichages
2 K
L
Réponses
21
Affichages
2 K
F
Réponses
5
Affichages
1 K
D
Réponses
2
Affichages
1 K
David69400
D
Retour