VBA中數組的讀取!
了解了數組的相關概念後,我們要開始學習在VBA中該如何利用數組去完成計算,那麼第一步,我們要學會如何把Excel中的一組數據給讀取到數組中去。
實例如下:
這個例子比較簡單,沒學數組也可以解決。
思路:用for each 把C列中的數據單元格循環出來,若單元格中的值大於500,則計數,一直循環完畢就OK了!
代碼如下:
Sub 計數()
Dim rng As Range, n%
For Each rng In Range("c2", [c2].End(xlDown))
If rng.Value > 500 Then n = n 1
Next
MsgBox "銷量大於500的人數為" & n & "人"
End Sub
如果利用數組來解決,那就要先把C2到C16中的數據先讀取到數組中。
代碼如下:
Sub 計數1()
Dim arr, ar, n%
arr = Range("c2", [c2].End(xlDown))
For Each ar In arr
If ar > 500 Then n = n 1
Next
MsgBox "銷量大於500的人數為" & n & "人"
End Sub
讀取到數組中以後,用for each 循環出來的就是數組的元素,這裡的元素是數字,可以直接與500進行比較。
假如現在讓求二辦的總銷量?思路同上面。
代碼如下:
Sub 條件求和()
Dim arr, i%, n%
arr = Range("a2", [c2].End(xlDown))
For i = 1 To Range("a2", [c2].End(xlDown)).Rows.Count
If arr(i, 1) = "二辦" Then n = n arr(i, 3)
Next
MsgBox "二辦的銷量為" & n
End Sub
這裡要學習的是,數組中元素怎麼表達,怎麼參與運算,通過這個例子我們會更加深刻的了解數組。
推薦閱讀:
※【Excel應用】數組公式的應用
※Pandas Series用if判斷缺損值並修改,不影響原有空間
※Excel問答:計算日期數列中各星期幾的數量(Weekday+數組)
※Excel數組公式應用徹底醒悟
※Excel 數組公式獲取自動篩選後第一行的行號
TAG:數組 |