標籤:

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:數組 |