我只想知道是否有一种简单的方法可以执行TextToColumns
之类的命令,获取array
并将该数组的部分内容连接到列中。
示例:
在单元格A2中选择TextToColumns字符串:John Doe 1:00 PM - 3:00 PM
要粘贴到单元格B2中的值:John Doe
要粘贴到单元格C2中的值:1:00 PM
要粘贴到单元格D2中的值:3:00 PM
我现在使用的代码是一个简单的TextToColumns
序列:
Sheets("Sheet1").Range("A2:A60").Select
Selection.TextToColumns Destination:=Sheets("Sheet1").Range("B2"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=False, _
Semicolon:=False, Comma:=False, Space:=True, Other:=False, FieldInfo _
:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), _
Array(7, 1))
TextToColumns运行后,我有3个CONCATENATE
公式一起重新加入值。我认为可能有更好的方法来处理这些信息
答案 0 :(得分:1)
未测试:
dim c, arr
for each c in Range("A2:A60").cells
If Len(c.value) > 0 then
arr = split(c.value," ")
c.offset(0, 1).value = arr(0) & " " & arr(1)
c.offset(0, 2).value = arr(2) & " " & arr(3)
c.offset(0, 3).value = arr(5) & " " & arr(6)
End If
next c