2014-12-03 44 views
-5

给大家的问候!在VBA中拆分色谱柱

我刚在网站上注册以寻找答案;我之前一直在浏览这些问题,而且我完成了大部分我需要做的事情,只有一个例外。

我一直在寻找答案,其中一个部分工作,但问题仍未解决。如果之前有人问过我,我真的很抱歉(虽然从我的搜索中我很怀疑,或者我可能做错了)。

基本上,我有一个表格式如下:

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

任何人都很难帮助您,直到您发布代码。 – Adam 2014-12-03 22:33:34

回答

0

假设您的'双管'字符意味着一个新的列然后尝试以下。请注意,它会覆盖您的原始数据。

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