如何在 Excel 中将逗号分隔的列表分成两列?

如何在 Excel 中将逗号分隔的列表分成两列?

我有一个很长的以逗号分隔的列表,在 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  

有没有简单的方法可以将其转换为两个单独的列?有超过 800 个值,我真的不希望将它们全部分开。

答案1

您是否尝试过使用文本分列

  1. 突出显示包含列表的列。
  2. 数据>文本分列
  3. 选择分隔符。 点击下一个
  4. 选择逗号。 点击下一个
  5. 选择一般的或者文本,无论您喜欢哪一个。
  6. 离开目的地或选择另一列。点击结束

您还可以在两个单独的列中使用两个公式。

获取逗号左边的值:

=0+LEFT(K1,FIND(",",K1)-1)

要获取逗号右边的值:

=0+RIGHT(K1,LEN(K1)-FIND(",",K1))

其中K1包含初始字符串,例如401.50,0.027

0+公式之前的**将提取的子字符串转换为数值数据。

答案2

将文本复制/粘贴到文本编辑器中,用回车符/换行符替换所有空格字符,保存为 TXT 文件。在 Excel 中打开该文件。

答案3

编写一些 vba 来处理你的列表

假设值列表位于单个单元格中且被选中。将结果放入以下单元格中

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

相关内容