Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Assembler des adresses mail

  • Initiateur de la discussion Initiateur de la discussion Smint
  • 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 !

Smint

XLDnaute Junior
Bonjour à vous tous,

Dans un colonne, de A à Ax, j'ai des adresses mail.

Pour pouvoir réaliser un envoi à tous avec mon client messagerie, je voudrais pouvoir, via une macro ou tout autre moyen pratique, les récupérer dans un fichier texte, les unes à la suite des autres, séparées par un point virgule et un espace.

Merci de votre aide,
Cordialement.
 
Re : Assembler des adresses mail

Bonjour,

Une piste, pas la plus pratique, mais ca marche plus facilement, me semble t'il qu'un copier / coller :

=A1&";"&B1&";"&C1&";"&D1 etc...

Après faudrait automatiser la chose, c'est à dire rajouter les points virgule et le &


Bon courage.
 
Re : Assembler des adresses mail

Bonjour à tous,

sinon une petite fonction en VBA :

Code:
Function FusionMail(Plage As Range) As String
    FusionMail = ""
    For i = 1 To Plage.Cells.Count
    FusionMail = FusionMail & Plage.Cells(i).Value & ", "
    Next i
    FusionMail = Left(FusionMail, Len(FusionMail) - 2)
End Function
 
Re : Assembler des adresses mail

Bonjour,

Ce serait magique, mais chez moi JOINCELLS ne répond pas, cela me fait : #NOM?

Ce serait quoi l'équivalent en français, ca dépend peut être des versions d'excel ?
 
Dernière édition:
Re : Assembler des adresses mail

Bonjour Brigitte, JCGL, mariobros,

facile de modifier mon petit code pour que ça fasse le JoinCells de mariobros :


Code:
Function JoinCells(Plage As Range, Separateur as String) As String
    JoinCells= ""
    For i = 1 To Plage.Cells.Count
    JoinCells= JoinCells& Plage.Cells(i).Value & Separateur 
    Next i
    JoinCells= Left(JoinCells, Len(JoinCells) - len(Separateur))
End Function
 
Re : Assembler des adresses mail

oups jcgl à raison !

je joint le fichier d'exemple avec le code de la fonction , désolé pour celui qui l'a pondu (car ce n'est pas moi) je ne peux pas le citer je ne sais plus qui c'est.
 

Pièces jointes

Re : Assembler des adresses mail

Merci tout le monde.

Moi ca m'intéresse votre truc... Dis moi tototiti, faut nommer la plage ?

J'y arrive pô...

1. j'ai copié ta macro dans un module
2. j'ai tapé =JoinCells(plage;";")

après avoir défini la plage de A1 à D1 par exemple.

Et ca bugge... Ca me met une phrase de la macro en rouge et après ca bugge encore...
 
Dernière édition:
Re : Assembler des adresses mail

Re,

Désolée, mais ca ne marche pas du tout pour moi.

Petite question, dans le classeur, après avoir nommé la plage, après avoir placé ta macro (corrigée), COMMENT fait on ? on tape =JoinCells(plage;";") ?

La macro met tjs une ligne en rouge :

Function JoinCells(Plage As Range, Separateur As String) As String
JoinCells = ""
For i = 1 To Plage.Cells.Count
JoinCells & Plage.Cells(i).Value & Separateur
Next i
JoinCells = Left(JoinCells, Len(JoinCells) - Len(Separateur))
End Function

Je suis vraiment pas douée, faut me décortiquer tout... je suis nulle en macro.

Merci d'avance.
 
Re : Assembler des adresses mail

vérifie qu'il y a bien des espaces comme dans la ligne rouge que j'ai posté plus haut, s'ils manquent rajoute-les (ou remplace la ligne qui plante par celle en rouge).
pas besoin de nommer ta plage "Plage", tu peux trés bien sélectionner de A1 à D1

sinon, =JoinCells(plage;";") devrait fonctionner

un exemple :
 

Pièces jointes

- 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
26
Affichages
2 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…