Plusieurs lignes dans une cellule en colonnes

Résolu
blocholivier -  
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

J'utilise une version de office 2013.

Je recherche une solution automatique sur Excel qui me permette transformer une cellule avec plusieurs lignes en colonnes.

Je m'explique, dans une cellule il y a environs 5 lignes misent à la ligne. Je voudrais que chaque ligne devienne une colonne et ceux automatiquement sur près de 1500 références...

Avez-vous une solution ?



7 réponses

Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Bonjour,

Une possibilité en VBA si tu as quelques notions, quelle colonne est à traiter

A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
Bonjour

Essaie une macro de ce style

A adapter à tes besoins

Ici les cellules à scinder sont en colonne A d'une 1ere feuille et sont reportées dans les colonnes d'une 2nde feuille

Sub encol()
Dim Tableau() As String
Dim i As Integer
DL = Sheets(1).Range("A" & Rows.Count).End(xlUp).Row
For n = 1 To DL
'découpe la chaine en fonction des retour à la ligne
'le résultat de la fonction Split est stocké dans un tableau
Tableau = Split(Sheets(1).Range("A" & n), Chr(10))

'boucle sur le tableau pour visualiser le résultat
For i = 0 To UBound(Tableau)
'Le résultat est inscrit dans la colonne x suivante de la feuille 2
x = x + 1
Sheets(2).Cells(1, x).Value = Tableau(i)
Next i

Next n
End Sub

Cdlmnt
0
blocholivier
 
Oula pas du tout.
La colonne a traité serait la "E" pour des copie sur les colonnes F, G, H, I, J et éventuellement K ... il peut y avoir jusqu'à 6 lignes en fait.
0
blocholivier
 
J'avais pas vu ta réponse je test ça tout de suite :)
0
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
En fait je n'avais pas tout compris je crois
Tu voudrais mettre en colonne POUR CHAQUE ligne et sur la même feuille ?
Précise moi et je réadapte la macro en conséquence
0
blocholivier
 
Oui en fait c'est ça. je viens de tester ton code ça marche niquel sauf le respect des lignes ....
0
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
Sub encol()
Dim Tableau() As String
Dim i As Integer
DL = Sheets(1).Range("E" & Rows.Count).End(xlUp).Row
For n = 1 To DL
'découpe la chaine en fonction des retour à la ligne
'le résultat de la fonction Split est stocké dans un tableau
Tableau = Split(Sheets(1).Range("E" & n), Chr(10))
x = 5
'boucle sur le tableau pour visualiser le résultat
For i = 0 To UBound(Tableau)
'Le résultat est inscrit dans les colonnes
x = x + 1
Sheets(1).Cells(n, x).Value = Tableau(i)
Next i

Next n
End Sub

Voilà pour que ce soit sur la même feuille
0
blocholivier
 
Ouahhhhh C'est excellent. Merci mille fois, ça me sauve la vie.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Re,

la solution la plus simple est pourtant le VBA, tu vas essayer et je vais faire simple, et par petit coup

sur ton Ruban as tu l'onglet Développeur, il se trouve après Données, Révision et Affichage

A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Re,

Pour ma part j'avais préparé ce code

Sub Eclater()
Dim m, tablo, k As Variant
For m = 2 To Range("E65536").End(xlUp).Row
tablo = Split(Range("E" & m), Chr(10))
For k = 0 To UBound(tablo)
If k >= 0 Then Cells(m, 5 + k) = tablo(k)
Next k
Next m
End Sub
0
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
Salut Mike ;)
On arrive à quelque chose de quasiment identique
Bon WE
Cdlmnt
0
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Salut Via,

Oui tout a fait, j'attendais la réponse de Blocholivier voir s'il connaissait le VBA et s'il avait l'onglet Développeur pour créer un bouton activex et coller le code directement dedans mais vu sa réponse "Oula pas du tout." je suis resté prudent et avancé par petit coup, mais bon, il y a deux codes pour ceux à qui cela peut intéresser et puis avec les retours chariot dans les cellules il y a le Chr(13) etc ... qui n'ont pas été traités et peu faire l'objet d'autres demandes
cordialement
A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0