1,先把表中第二行和第三行的內容連接起來,然後用Split把它們拆分成數組。
2.新建壹個工作表,將分解後的內容賦給新的工作表,因為表中的值不是單對應的(比如23.6BB的情況,第二行只有兩個值,但是後面三個值是連在壹起的)。建議妳讓它們在原表中對應,像21.5CC,定期寫代碼會更容易)。
3.用字典法對新增工作表中的數據進行匯總,然後賦值。最終的畫面效果就形成了。
子提取字段()
Dim ARR,I,cp,cp1,CP2,CP3,ARR1,ARR2,ARR3,arr4,RNG作為範圍,D作為對象
ARR =張(1)。【A1】。當前區域
對於I = 2到下界(ARR,2)
cp = cp & ampARR(2,I)和amp"-"
CP 1 = CP 1 & amp;ARR(3,I)和amp"+"
然後
CP2 =左(CP,Len(cp) - 1)
CP3 =左(cp1,Len(cp1) - 1)
ARR1 = Split(CP2,"-")
ARR2 = Split(CP3,“+”)
對於I = 0至欠載(ARR1)
床單(2)。單元格(I + 1,1) = ARR1(I)
然後
設置RNG =床單(2)。列(" a:a ")。查找(“23.6BB”)
申請。去RNG
RNG。挑選
選擇。Insert Shift:=xlDown,copy origin:= xlformatfromleforabove
RNG。偏移量(-1,0)。挑選
ActiveCell。公式1C1 = "=R[1]C "
對於I = 0至下界(ARR2)
床單(2)。單元格(I + 1,2) = ARR2(I)
然後
arr4 =工作表(2)。【A1】。當前區域
Set D = CreateObject("腳本。字典》)
對於I = 1至UBound(arr4)
D(arr4(I,1)) = D(arr4(I,1)) + arr4(I,2)
然後
張(1)。[H2]。調整大小(1,D.Count) = D.KEYS
張(1)。[H3]。調整大小(1,D.Count) = D.ITEMS
末端接頭