Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.
  • Initiateur de la discussion Initiateur de la discussion Laurent_C
  • 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 !

L

Laurent_C

Guest
Bonjour à tous,
J ai un tableau avec plein de mots clefs séparés par des virgules.
Comment puis-je faire pour convertir les virgules en nouvelles lignes et ainsi avoir une colonne avec un mot clef par ligne ?
Je vous joins un fichier xlsx pour vous presenter la situation sur laquelle je suis coincé

Merci beaucoup à vous
 

Pièces jointes

Bonjour

Si c'est ponctuel, utiliser Données convertir en précisant la virgule comme séparateur, trier la seconde colonne obtenue pour regrouper les données puis les copier coller à la fin de la 1ère colonne.

Si c'est à refaire régulièrement il faut passer par VBA.
 
Bonjour Laurent_C.

Code possible :
VB:
Sub éclater()
Dim x, j&, k&, v$(), w$(), cel As Range
  With Selection
    If .Columns.Count = 1 Then
      For Each cel In .Cells
        x = Split(CStr(cel.Value), ",")
        For j = 0 To UBound(x)
          If Trim(x(j)) <> "" Then k = k + 1: ReDim Preserve v(1 To k): v(k) = Trim(x(j))
        Next j
      Next cel
      If k > 0 Then
        ReDim w(1 To k, 0)
        For j = 1 To k: w(j, 0) = v(j): Next j
        With .Resize(k, 1)
          .Value = w
          .RemoveDuplicates Columns:=1, Header:=xlNo

'=====   Pour traduire en français lisible :   ====='

          .CheckSpelling SpellLang:=1036
          .RemoveDuplicates Columns:=1, Header:=xlNo

'==================================================='

          .Cells(1).Select
        End With
      End If
    End If
  End With
End Sub
Variante :
VB:
Sub éclater2() 'Plus rapide. Conseillé si les données sont nombreuses.
Dim x, i&, j&, k&, u(), v$(), w$()
  With Selection
    If .Columns.Count = 1 Then
      u = .Resize(.Rows.Count, 2).Value
      ReDim Preserve u(1 To UBound(u), 1 To 1)
      For i = 1 To UBound(u)
        x = Split(u(i, 1), ",")
        For j = 0 To UBound(x)
          If Trim(x(j)) <> "" Then k = k + 1: ReDim Preserve v(1 To k): v(k) = Trim(x(j))
        Next j
      Next i
      If k > 0 Then
        ReDim w(1 To k, 0)
        For j = 1 To k: w(j, 0) = v(j): Next j
        With .Resize(k, 1)
          .Value = w
          .RemoveDuplicates Columns:=1, Header:=xlNo

'=====   Pour traduire en français lisible :   ====='

          .CheckSpelling SpellLang:=1036
          .RemoveDuplicates Columns:=1, Header:=xlNo

'==================================================='

          .Cells(1).Select
        End With
      End If
    End If
  End With
End Sub

Bonne journée.

ℝOGER2327
#8407


Mercredi 18 As 144 (Saint Chambernac, pauvriseur - fête Suprême Quarte)
30 Brumaire An CCXXV, 4,6668h - rouleau
2016-W46-7T11:12:01Z
 

Pièces jointes

Bonjour et merci, je vais regarder cela en profondeur
Ce sera le premier fois
Je suis sur mac cela pose t il un problème, car le raccourci ctrl+m ou cmd+m ne fonctionne pas

Merci
 
Re...

Bonjour et merci, je vais regarder cela en profondeur
Ce sera le premier fois
Je suis sur mac cela pose t il un problème, car le raccourci ctrl+m ou cmd+m ne fonctionne pas

Merci
Au temps pour moi. Je n'ai pas remarqué que cette discussion est ouverte dans la section «MAC» du forum.
Sur les machines maliques, il doit bien exister un moyen d'afficher la liste des procédures associées à un classeur et de faire exécuter l'une d'entre elles. Si oui, sélectionnez et exécutez l'une des procédures éclater ou éclater2. Sinon, je ne sais pas ...


ℝOGER2327
#8408


Mercredi 18 As 144 (Saint Chambernac, pauvriseur - fête Suprême Quarte)
30 Brumaire An CCXXV, 5,4717h - rouleau
2016-W46-7T13:07:56Z

 
Re...

Pour ROGER2327 :

Bonjour,

J'ai essayé les deux versions même en lançant par F5 dans le code ; aucune n'a donné de résultat. Pourtant, je suis sous EXCEL 2010 PC...

Cordialement
Bizarre. Je viens de rouvrir le classeur que j'ai déposé. J'ai :
  1. sélectionné F3:F9 ;
  2. pressé Ctrl C ;
  3. sélectionné I3 ;
  4. pressé Entrée ;
  5. pressé Ctrl m ;
  6. accepté les propositions du correcteur d'orthographe ;
  7. obtenu :



ℝOGER2327

#8409


Mercredi 18 As 144 (Saint Chambernac, pauvriseur - fête Suprême Quarte)
30 Brumaire An CCXXV, 5,6245h - rouleau
2016-W46-7T13:29:55Z
 

Pièces jointes

  • Capture2.PNG
    17.3 KB · Affichages: 145
- 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

Réponses
3
Affichages
249
Réponses
19
Affichages
790
  • Question Question
Microsoft 365 Mediane occupation
Réponses
6
Affichages
199
Réponses
15
Affichages
626
Réponses
6
Affichages
285
Réponses
40
Affichages
2 K
Réponses
5
Affichages
337
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…