返回列表 上一主題 發帖

搜尋 配對 輸出值

本帖最後由 准提部林 於 2015-10-20 17:06 編輯
  1. Sub Macro3()
  2. Dim j&, C&, Arr, Brr, X&, Y&, T$, xD
  3. With Range([A1], [A65536].End(xlUp)(1, 2))
  4.    Arr = .Value
  5.    '_範圍納入陣列
  6.    C = Application.CountIf(.Columns(1), "[*]") + 1
  7.    '_計算〔項目〕個數
  8. End With
  9.  
  10. ReDim Brr(UBound(Arr), C)
  11. Set xD = CreateObject("Scripting.Dictionary")
  12.  
  13. For j = 1 To UBound(Arr)
  14.    T = Arr(j, 1): If T = "" Then GoTo 101
  15.    '儲存格值以 T 變數代之
  16.    If Left(T, 1) = "[" Then X = X + 1: Brr(0, X) = T: GoTo 101
  17.    '_儲存格若為〔項目〕,向右累計欄位,並加入項目
  18.    If xD(T) = 0 Then Y = Y + 1: xD(T) = Y: Brr(Y, 0) = T
  19.    '_若為〔明細〕,向下累計列位,並加入明細
  20.    Brr(xD(T), X) = Val(Arr(j, 2))
  21.    '_帶入配對值
  22. 101: Next j
  23.  
  24. [F7].Resize(Y + 1, X + 1) = Brr
  25. '_填入陣列內容
  26. [G8].Resize(Y, X).Replace "", "n/a"
  27. '_將〔空格〕取代為〔n/a〕
  28. End Sub
複製代碼

 
 
只能大約註解,請自行研究,恕不再說明∼∼ 

TOP

        靜思自在 : 口說好話、心想好意、身行好事。
返回列表 上一主題