2014-12-03 93 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