Concaténation Excel avec beaucoup de données
Résolu
jimix31
Messages postés
47
Date d'inscription
Statut
Membre
Dernière intervention
-
jimix31 Messages postés 47 Date d'inscription Statut Membre Dernière intervention -
jimix31 Messages postés 47 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je cherche à concaténer un grand nombre de données avec excel, je vais vous faire un exemple ça sera plus simple:
J'ai, dans la colonne "F" des données comme celles-ci:
F2: 1AA101
F3: 1AA102
...
F70743: 6ZA902
Et je voudrais les concaténer pour en arriver là:
=F2&"|0|0||"&F3&"|0|0||"&F4&"|0|0||"&...&"|0|0||"&F70743&"|0|0"
Ce qui donne comme résultat:
1AA101|0|0||1AA102|0|0||1AA103|0|0||...|0|0||6ZA902|0|0
Auriez vous un moyen simple et rapide pour faire ça? ou une idée?
Merci!
--
Dj Jimix
Swiss Hardstyler
----------------
Dans le doot, reboot
Je cherche à concaténer un grand nombre de données avec excel, je vais vous faire un exemple ça sera plus simple:
J'ai, dans la colonne "F" des données comme celles-ci:
F2: 1AA101
F3: 1AA102
...
F70743: 6ZA902
Et je voudrais les concaténer pour en arriver là:
=F2&"|0|0||"&F3&"|0|0||"&F4&"|0|0||"&...&"|0|0||"&F70743&"|0|0"
Ce qui donne comme résultat:
1AA101|0|0||1AA102|0|0||1AA103|0|0||...|0|0||6ZA902|0|0
Auriez vous un moyen simple et rapide pour faire ça? ou une idée?
Merci!
--
Dj Jimix
Swiss Hardstyler
----------------
Dans le doot, reboot
4 réponses
-
Merci pour vos réponses, je ne les ai pas testées car j'ai réussi à faire ma ligne avec notepad++ ^^'
Mais effectivement il y a trop de caractères pour tout mettre dans une cellule, donc j'ai abandonné cette idée.
-
Salam jimix31.
Essaye ce code VBA :
Private Sub CONCATENER()
c = ""
For ligne = 2 To Range("F2").End(xlDown).Row
If ligne = Range("F2").End(xlDown).Row Then
c = c & Range("F" & ligne) & "|0|0"
Else
c = c & Range("F" & ligne) & "|0|0||"
End If
Next ligne
Range("H2") = c
End Sub
Le résultat concaténé est placé en cellule H2.
:) -
Bonjour
Une solution via une macro
https://www.cjoint.com/?3Kllo3mJ40a
RQ. Je ne sais pas ce que ça va donner dur 70000 lignes!
Cdlmnt -
Bonjour
petite question : en me basant sur tes données (70000 lignes), comment afficher un texte de env. 840000 caractères sur Excel ?
sur 70000 lignes, il est préférable de passer par une variable de tableau question rapidité.
Option Explicit Sub concaténer_lourd() Dim Derlig As Long, T_in(), Idx As Long, Concat As String Dim Start As Single Application.ScreenUpdating = False Start = Timer Derlig = Columns("F").Find("*", , , , , xlPrevious).Row T_in = Application.Transpose(Range("F2:F" & Derlig)) For Idx = 1 To UBound(T_in) Concat = Concat & T_in(Idx) & "|0|0||" Next Range("H2") = Concat Application.ScreenUpdating = False MsgBox " durée concaténation: " & Timer - Start & " sec." End Sub
essai sur 11000lignes en 0,7 secondes
Michel