vb中for循環語句的用法:1、【for..next】語句,通過i判斷結構為【for i=初始值 to 結束值 step 步長值】;2、【for each..next】語句,是對象變量,結構為【For each 對象變量 in 對象集合】。
vb中for循環語句的用法:
1、我們常用的for循環語句有兩種,一個是for ……next結構;一個是For each……next結構。這兩種結構主要都是針對多數據循環遍歷的時候用到的。那么下面我將分別來介紹一下兩種循環結構的具體用法,首先還是要打開VBA編輯器
2、for……next結構
? 這個結構一般是這樣的:
for i=初始值 to 結束值 step 步長值
? ? ……
next
具體解釋一下,初始值指的是循環開始的值,結束值指的是循環結束的值,實質上就是i值得一個判斷,如果i值在起始值和結束值之間,那么進入循環語句,然后i值每運行到next語句后會自動加一個步長值,直至i值超出了初始值到結束值這個范圍,循環才會結束。這里要說明一下”step 步長值“往往是省略掉的,省略掉的話,步長取默認值為1。下面將以一段小實例來具體說明這個結構的用法:
實例:在sheet1工作表中一次輸出1到10這個數,顯示在第一列中。
程序:
Sub?循環語句() Dim?i?As?Integer For?i?=?1?To?10 ??Cells(i,?1)?=?i Next End?Sub
步長為+2的for循環結構
?這里我們看一下一個示例程序吧
程序:
Sub?循環語句() Dim?i?As?Integer For?i?=?1?To?10?Step?2 ????Cells(i,?1)?=?i Next End?Sub
步長為-1的for循環結構
? ?這里同樣的我們來看一下當step值為-1的時候,程序又會是如何的呢?
看下面實例程序:
Sub?循環語句() Dim?i?As?Integer For?i?=?10?To?1?Step?-1 ????Cells(i,?1)?=?i Next End?Sub
3、for each……next結構
? ?具體結構:
For each 對象變量 in 對象集合
? ?……
next
具體解釋一下,這里我們看到和上一個結構的而不同的是上面一種結構主要是數值變量,而這種結構是對象變量。什么意思呢?each……in指的是在這個對象集合里面,一次將每一個對象都遍歷一邊。同樣的道理,執行到next后對象自動指到下一個。具體我們來看一下下面的一個實例吧
實例:給一個數據區域內的所有單元格賦值,從1開始。
分析:顯然數據區域就是一個對象集合,單元格就是這個集合里面的對象
程序:
Sub?循環語句() Dim?i?As?Integer For?Each?c?In?Range("a1:c5") ??i?=?i?+?1 ??c.Value?=?i Next End?Sub
循環語句運用起來是很靈活的,上面只介紹了兩種循環語句的基本用法,循環語句是可以套用的,這個就需要結合具體情況來靈活運用了!
下面我們用多循環語句嵌套來實現乘法口訣:
程序:
Sub?循環語句() Dim?i,?j?As?Integer For?i?=?1?To?9 ??For?j?=?1?To?i ????Cells(i,?j)?=?i?&?"*"?&?j?&?"="?&?i?*?j ?Next Next End?Sub
推薦教程:《excel基礎教程》