Rangement adresse mail

bonjour,

j'ai tout une liste d'adresses mail séparées par un point virgule dans une cellule.

Afin de créer un groupe dans Outlook j'aurais besoin quelles soient dans une colonne ligne par ligne voir le fichier. Je joins exemple si dessous en fichier j'ai jusqu'à+- 90 adresses.

image

Mes connaissances en vba ne me permettent pas d'écrie quelque chose si c'est possible?

merci de votre aide par avance

philippe

Bosoir,

Utilises la fonctiion "Transpose"
Exemple

=TRANSPOSE(A3:A9)

en tapant dans une cellle ceci tu auras une transposiition des cellules de A3 à A9

bonjour Jacky

merci pour ta réponse mais ce n'est pas ce que je veux, en B1 j'ai une liste d'adresse mail et je voudrais les mettre dans la colonne A une par une

Bonjour à tous,

Vous avez O365 ? Jacky également en proposant TRANSPOSE ? (Si oui vos profils ne sont pas à jour).

Et du coup, je propose :

=TRANSPOSE(FRACTIONNER.TEXTE(B1;";";;1)&";")

bonjour JB

j'ai essayé ta fonction dans mon fichier ou j'ai 87 adresses mail, la fonction renvoi #NOM?.

En vba existe t il une solution?

cordialement

philippe

Hello,

Sur ce ce lien tu trouveras un peu plus bas exactement ton exemple

C’est un point virgule au lieu d’une virgule mais ça devrait aller pour adapter

https://www.automateexcel.com/fr/vba/split-diviser-chaine-tableau/#:~:text=La%20fonction%20VBA%20Spl...

@+

Bonjour Baroute78

je suis allé sur ton lien , j'ai bien trouvé ma solution comme j'étais limité avec le nombre d'adresse mail j'ai modifier le vba comme suit:

Sub ExempleSplitPointsVirgules()
'Définition des variables
Dim MonTableau() As String, MaChaine As String, I As Variant, N As Integer
'Exemple de chaine de texte délimitée par des points-virgules
MaChaine = range("b1").Text
'Utilisation de la fonction split pour diviser la chaine en plusieurs composants
MonTableau = Split(MaChaine, ";")
'Efface la feuille de calcul
ActiveSheet.UsedRange.Clear
'Boucle sur le tableau généré
For N = 0 To UBound(MonTableau)
     'Place chaque adresse courriel dans la première colonne de la feuille de calcul
     Range("A" & N + 1).Value = MonTableau(N)
Next N
End Sub

j'ai coller ma liste en B1 et le vba à fait le rest.

Merci à toi et aux autres intervenants pour votre aide

cordialement

Philippe87

Bonjour à tous,

Une petite alternative en utilisant le transpose de @Jacky (mais je ne suis pas sur s'il est dispo sur Excel 2007, sinon gardez votre solution).

La macro vous demande de cliquer la cellule contenant les adresses mails, et les copie en dessous.

Sub exemple()
  Dim maRange As Range
  Set maRange = Application.InputBox(prompt:="Sélectionner la cellule contenant les adresses mails", Type:=8)
  If maRange.Count <> 1 Then Exit Sub

  Dim mesAdresses() As String
  mesAdresses = VBA.Split(maRange.Value2, ";")
  maRange.Offset(1, 0).Resize(UBound(mesAdresses) + 1).Value2 = _
    WorksheetFunction.Transpose(mesAdresses)
End Sub

N'oubliez pas de cloturer le fil, bonne journée

Bonjour à tous,

JB, je possède bien Excel 365, et la fonction transpose, telle que l'ai écrite plus bas, fonctionne correctement. Mais évidemment pour transposer la ligne de Philippe en colonne ça ne peut pas marcher car il ne s'agit pas d'une succession se données mais d'une seule située en B2, ce que par étourderie je n'avais pas remarqué.
En ce qui concerne la fontion transpose que tu nous a présentée, évidemment elle répondra à la question car au préalable tu décomposes le texte de Philippe
Bonne journée et merci

Saboh, bien le bonjour et au plaisir de se retrouver

Bonjour à tous ,

Ma p'tite version en VBA. Le code est dans Module1. Cliquer sur le bouton Hop! On a le choix :

  • de la cellule source
  • de la cellule cible
  • du sens du résultat (en colonne ou en ligne)

nota : la cible et la source peuvent être sur des feuilles différentes. Et les deux feuilles peuvent aussi être dans des classeurs différents (mais ouverts tous les deux).

Re,

Si vous voulez intégrer le code sans la saisie (la source, la cible et le sens du résultat sont fixés directement au sein du code), alors le code est raccourci car la partie du code correspondant à la saisie par l'utilisateur est éliminée.

Rechercher des sujets similaires à "rangement adresse mail"