Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel formula 在excel列中拆分数据_Excel Formula_Excel 2010 - Fatal编程技术网

Excel formula 在excel列中拆分数据

Excel formula 在excel列中拆分数据,excel-formula,excel-2010,Excel Formula,Excel 2010,我有一列包含eg:6B31-21045M22-AA的数据 我正在尝试分割'-'前后的数据。像 A B C D 6B31-21045M22-AA 6B31 21045M22 AA 我试过了 =LEFT(A2, SEARCH(“-”,A2)-1) and =Right(A2, SEARCH(“-”,A2)-1) 但如果“-”出现不止一次,那么如何拆分6B31-21045M22-AA或 6B31-21045M22-AA-SWQ数

我有一列包含eg:6B31-21045M22-AA的数据
我正在尝试分割'-'前后的数据。像

A                  B     C         D
6B31-21045M22-AA   6B31  21045M22  AA
我试过了

 =LEFT(A2, SEARCH(“-”,A2)-1)  and =Right(A2, SEARCH(“-”,A2)-1)
但如果“-”出现不止一次,那么如何拆分6B31-21045M22-AA或
6B31-21045M22-AA-SWQ

数据在A1中,在B1中输入:

=TRIM(MID(SUBSTITUTE($A1,"-",REPT(" ",999)),COLUMNS($A:A)*999-998,999))
并复制到:

(这也可以使用VBA完成)

编辑#1:

使用VBA,
选择要处理的单元格并运行以下操作:

Sub Splitter()
    Dim ary, i As Long, a
    With ActiveCell
        ary = Split(.Value, "-")
        i = 1
        For Each a In ary
            .Offset(0, i).Value = a
            i = i + 1
        Next a
    End With
End Sub

数据在A1中,在B1中输入:

=TRIM(MID(SUBSTITUTE($A1,"-",REPT(" ",999)),COLUMNS($A:A)*999-998,999))
并复制到:

(这也可以使用VBA完成)

编辑#1:

使用VBA,
选择要处理的单元格并运行以下操作:

Sub Splitter()
    Dim ary, i As Long, a
    With ActiveCell
        ary = Split(.Value, "-")
        i = 1
        For Each a In ary
            .Offset(0, i).Value = a
            i = i + 1
        Next a
    End With
End Sub

您不需要公式或VBA脚本。你可以用。只需选择包含数据的列,然后使用“数据”面板上的“文本到列”按钮。然后在向导中选择分隔符并将“-”符号设置为分隔符。

您不需要公式或VBA脚本。你可以用。只需选择包含数据的列,然后使用“数据”面板上的“文本到列”按钮。然后在向导中选择分隔符并将“-”符号设置为分隔符。

这不是编程问题这不是编程问题如何处理VBA?@sam请参阅编辑1.,若要处理多个单元格,请使用循环结构。如何处理VBA?@sam请参阅编辑1.,若要处理多个单元格,请使用循环结构。