返回列表 上一主題 發帖

[發問] VBA計算箱子號碼

本帖最後由 Andy2483 於 2023-3-16 16:23 編輯

回復 10# john2006168


    謝謝前輩發表此主題與範例
後學藉此帖練習陣列與字典,請前輩參考,請各位前輩指教

執行前:


執行結果:


Option Explicit
Sub Test4()
Dim Brr, Y, N&, i&, xR As Range, T$
'↑宣告變數:(Brr,Y)是通用型變數,(N,i)是長整數變數,
'xR是儲存格變數,T是字串變數

Set Y = CreateObject("Scripting.Dictionary")
'↑令Y這通用型變數是 字典
Set xR = Range([E1], [A65536].End(3))
'↑令xR這儲存格變數是 [E1]到A欄最後有內容儲存格
Brr = xR
'↑令Brr這通用型變數是二維陣列,以xR變數值帶入
For i = 2 To UBound(Brr)
'↑設順迴圈!i從2到 Brr縱向最大索引列號
   T = Brr(i, 5): N = Y(T) + 1
   '↑令這字串變數是 i迴圈列第5欄Brr陣列值,
   '令N這長整數變數是 T變數查Y字典回傳的item值+1

   Y(T) = Y(T) + Brr(i, 3)
   '↑令Y字典中以T變數為key的item值,累加i迴圈列第3欄Brr陣列值
   Brr(i, 4) = T & N & "-" & T & Y(T)
   '↑令i迴圈列第4欄Brr陣列值是 T變數連接N變數,
   '再連接"-",續連接T變數,最後連接(T變數在Y字典的item值),
   '這是字串

Next
xR = Brr
'↑令xR變數(原儲存格)值是 Brr陣列值
Set Y = Nothing: Erase Brr
'↑令釋放變數
End Sub
用行動裝置瀏覽論壇學習很方便,謝謝論壇經營團隊
請大家一起上論壇來交流

TOP

        靜思自在 : 一句溫暖的話,就像往別人身上灑香水,自己會沾到兩三滴。
返回列表 上一主題