向大家致以问候!
我刚刚在网站上注册以寻找答案;我以前一直在浏览这里的问题,而且我完成了我需要做的所有事情,但有一个例外。
我一直在寻找答案,其中一个部分有效,但问题仍然没有解决。我真的很抱歉,如果之前被问到过(虽然从我的搜索中我怀疑它,或者我可能做错了)。
基本上,我有一个这种格式的表:
Onething.10.20g || A
Anotherthing.20.15g || B
......(它一直在继续,但是很相似。)
我需要做的是仅使用VBA将其转换为以下格式:
Onething || 10 || 20g || A
Anotherthing || 20 || 15g || B
我设法做的事情基本上是这样的:
Onething.10.20g || 10
Anotherthing.20.15g || 20
这显然告诉我,这条路线并非完全错误,但也有些不太正确。
我也不能在这里粘贴代码,但稍后我就可以做到。
提前感谢您,对于给您造成的任何不便,我深表歉意!
答案 0 :(得分:0)
假设你的双管道是' character表示新列,然后尝试以下操作。请注意,它会覆盖原始数据。
Sub test()
Dim arr() As String, constr As String
Dim stCol As Long, stRow As Long, endRow As Long
stCol = 2
stRow = 1
endRow = Cells(Rows.Count, stCol).End(xlUp).Row
For c = stRow To endRow
constr = Cells(c, stCol).Value & "." & Cells(c, stCol).Offset(0, 1).Value
arr() = Split(constr, ".")
Range(Cells(c, stCol), Cells(c, UBound(arr, 1) + stCol)) = arr
Next c
End Sub