回復 10#asus103
程式碼中許多事並不明白,還請指教
1.For Each A In [A1:D1]
ad = Range(A, Cells(Cells.Rows.Count, A.Column).End(xlUp)).Address
ad不是A1:D11嗎?為何每一次移動一欄而不是一個儲存格
ans:我使用第一列作迴圈,所以ad字串是傳回該列資料範圍的位址
2.Ar(s) = Evaluate("MAX(LENb(" & ad & "))")
感覺上像EXCEL中陣列的用法,但實在掌握不住竅門所在,能解釋一下這個用法嗎?
ans:這是陣列用法沒錯,這等於在儲存格內填入陣列公式,假設ad變數的值等於"$A$1:$A$11"
就等同在儲存格內輸入陣列公式{=MAX(LENB($A$1:$A$11))}所得到的值一樣