天天看點

VBA基本文法For Each 結構,有什麼特點,注意事項

作者:日常生活小妖

上一章分享了"邊做"循環結構的含義以及如何使用它,今天本章分享了每個VBA的基本文法...後續功能,使用說明等。

讓我們首先看一下 For Each 結構的含義:

對于組合的每個元素變量(可以是集合或數組)

要執行的語句塊

退出

下一個元素變量

以下是螢幕截圖以擷取特定解釋:

VBA基本文法For Each 結構,有什麼特點,注意事項

注意:對于每個....Next比其他循環結構更靈活,并且不需要任何循環判斷,特别是當循環數組或集合就位時。還有一個事實是,當數組被循環時,數組的值不能被修改,對于已經具有值的數組,元素的屬性隻能被修改(即,前面的示例,更改字型顔色等)。

讓我們舉一個簡單的例子來看看效果:

接下來是列 A 中具有多個名稱的單元格(無論名稱是否重複)

VBA基本文法For Each 結構,有什麼特點,注意事項

我們需要做的就是使用這個剛剛學會的循環結構将資料輸出到表中。

VBA基本文法For Each 結構,有什麼特點,注意事項

以下是解釋代碼的方法:

VBA基本文法For Each 結構,有什麼特點,注意事項

代碼 1:

亞鐵()

Dim i As Integer, k As Integer, j As Variant, b As Integer

Dim shuzu() 作為變體

b = WorksheetFunction.CountA(Range("A:A"))

ReDim shuzu(1 To b) 作為變體

對于 k = 1 到 b

shuzu(k) = Cells(k, 1)

下一個

i = 1

對于每個 j 在 shuzu

單元格(i, 2) = j

i = i + 1

結束子

舉另一個常見的例子(這沒有什麼實際意義,主要是要了解如何使用For each loop結構):

用于每個....接下來編寫一個程式,該程式将 1 到 20 的整數輸出到單元格 A1 到 A20。

VBA基本文法For Each 結構,有什麼特點,注意事項
VBA基本文法For Each 結構,有什麼特點,注意事項

代碼 2:

Sub sh()

Dim k As Range, j As Integer

j = 1

對于範圍内的每個 k("A1:A20")

k.值 = j

j = j + 1

注意:其中的輸出将位于活動表的單元格中(活動是指您正在打開和處理的表),您可以嘗試切換到該工作表,結果将被輸出。

今天在這裡分享,喜歡請大家注意,謝謝!

明天繼續分享