excel-基于第一个单元格中的数字将单元格数据拆分为其他单元格

excel-基于第一个单元格中的数字将单元格数据拆分为其他单元格,excel,row,cell,Excel,Row,Cell,我在excel中有一个单元格,其中包含以下数据 108-0109-1110-0111-2112-0113-192114-87115-100116-80117-60 我需要制作一个脚本或if语句,它可以将单元格中的数据拆分为自己的单元格 如数据所示: 108-0将被放入数据为0的单元格A108,109-1将被放入数据为1的单元格A109 这将如何实现?我应该读些什么 提前谢谢 我忘了提到excel工作表应该自动完成。我正在导入数百个100-1值,因此它们应该自动放入自己的单元格中 结果-这对我起了

我在excel中有一个单元格,其中包含以下数据

108-0109-1110-0111-2112-0113-192114-87115-100116-80117-60

我需要制作一个脚本或if语句,它可以将单元格中的数据拆分为自己的单元格

如数据所示:

108-0将被放入数据为0的单元格A108,109-1将被放入数据为1的单元格A109

这将如何实现?我应该读些什么

提前谢谢

我忘了提到excel工作表应该自动完成。我正在导入数百个100-1值,因此它们应该自动放入自己的单元格中

结果-这对我起了作用:

Sub tst()
Dim X As Variant
X = Split(Range("A1").Value, ",")
Range("A1").Resize(UBound(X) - LBound(X) + 1).Value = Application.Transpose(X)
End Sub
您可以使用自定义项:

Function splitThem(r As Range, delimeter As String)
    splitThem = WorksheetFunction.Transpose(Split(r, delimeter))
End Function
只需选择
A108:A117
,在公式栏中输入下一个公式
=拆分它们(A1,“,”
,然后按CTRL+SHIFT+enter键对其进行计算

UPD:

让您的值处于
A1:D1
范围内,您可以使用:

Sub test()
    Dim c As Range
    Dim str As Variant
    On Error Resume Next
    For Each c In Range("A1:D1")
        c.Offset(1).Resize(UBound(str)) = WorksheetFunction.Transpose(Split(c, ","))
    Next
End Sub

谢谢你的回答。我忘了在我的问题中提到一个小细节:我忘了提到excel工作表应该自动完成它。我正在导入数百个100-1值,因此它们应该自动放入自己的单元格中。