J'ai une longue liste séparée par des virgules qui ressemble à ceci dans Excel:
401.50,0.027
402.00,0.028
402.50,0.029
403.00,0.031
403.50,0.032
404.00,0.034
404.50,0.037
Existe-t-il un moyen simple de convertir cela en deux colonnes distinctes? Il y a plus de 800 valeurs et je n'ai vraiment pas hâte de les séparer toutes individuellement.
Avez-vous essayé d'utiliser Texte en colonnes ?
Vous pouvez également utiliser deux formules dans deux colonnes distinctes.
Pour obtenir les valeurs à gauche de la virgule:
=0+LEFT(K1,FIND(",",K1)-1)
Pour placer les valeurs à droite de la virgule:
=0+RIGHT(K1,LEN(K1)-FIND(",",K1))
où K1
contient la chaîne initiale, telle que 401.50,0.027
** 0+
avant les formules convertit les sous-chaînes extraites en données numériques.
Copier/coller le texte dans un éditeur de texte Remplacez tous les espaces par des retours à la ligne/des sauts de ligne Enregistrer sous un fichier TXT. Ouvrez le fichier dans Excel.
écrivez un peu de vba pour traiter votre liste
Cela suppose que la liste de valeurs se trouve dans une seule cellule et est sélectionnée. Met les résultats dans les cellules suivantes
Sub zx()
Dim a() As String
Dim v As Variant
Dim i As Long
Dim j As Long
a = Split(ActiveCell.Value, " ")
ReDim v(1 To UBound(a) + 1, 1 To 2)
For i = 1 To UBound(a) + 1
j = InStr(a(i - 1), ",")
v(i, 1) = Val(Left(a(i - 1), j - 1))
v(i, 2) = Val(Mid(a(i - 1), j + 1))
Next
ActiveCell.Offset(1, 0).Resize(UBound(a) + 1, 2) = v
End Sub