在對象中循環——For Each-Next結構的使用

      網友投稿 589 2025-03-31

      在對象中循環——For Each-Next結構的使用


      為方便操控Excel對象,VBA提供了For Each-Next結構,可以在對象組成的集合中循環,給集合中的所有對象執行操作,或者集合中滿足相關條件的對象執行操作。

      For Each-Next結構的語法如下:

      For Each 對象變量In 對象集合

      [語句塊]

      [Exit For]

      [語句塊]

      Next [對象變量]

      說明:

      按照慣例,方括號中的內容表示可選項。

      Exit For語句表示提前退出循環。

      無需知道集合中的對象數目。

      可以與其它語法結構相互嵌套。

      下面通過示例來演示For Each-Next結構的使用。

      示例1:下面的代碼遍歷當前工作簿中的工作表并依次顯示工作表的名字。

      Sub ForEach1()

      ‘遍歷工作表集合并依次顯示工作表的名字

      For Each wks In Worksheets

      MsgBox “工作表的名字是:”& wks.Name

      Next wks

      End Sub

      示例2:通過改進上面的示例1,在顯示工作表名字時表明是第幾個工作表,最后統計出工作簿中的工作表數,代碼如下。

      Sub ForEach2()

      i = 0 ‘給變量賦初始值

      For Each wks In Worksheets

      i = i + 1

      MsgBox “第” &i & “個工作表的名字是:” & wks.Name

      Next wks

      MsgBox “本工作簿共有” & i& “個工作表.”

      End Sub

      示例3:下面的代碼遍歷當前工作表的單元格區域A1:A5,并依次顯示每個單元格中的內容。

      Sub ForEach3()

      ‘遍歷單元格區域A1:A5并依次顯示單元格內容

      For Each cell In Range(“A1:A5”)

      MsgBox cell.Value

      Next cell

      End Sub

      示例4:下面的代碼與示例3的效果相同,但我們設置了代表單元格區域的對象變量并賦值,讓For Each結構在對象變量代表的區域內循環遍歷。

      Sub ForEach4()

      ‘設置rng變量的值

      Set rng = Range(“A1:A5”)

      ‘遍歷rng對象變量代表的單元格區域并依次顯示單元格內容

      For Each cell In rng

      MsgBox cell.Value

      Next cell

      End Sub

      示例5:下面的代碼結合If-Then結構判斷滿足相應條件的單元格數。

      如下圖所示,要統計成績大于80分的學生人數。

      運行下面的代碼即可。

      Sub ForEach5()

      ‘設置rng變量的值

      Set rng = Range(“B2:B9”)

      i = 0

      ‘遍歷rng對象變量代表的單元格區域

      ‘并判斷單元格中的值是否大于80

      For Each cell In rng

      If cell.Value > 80 Then

      i = i + 1

      End If

      Next cell

      MsgBox “共有” & i& “名學生超過80分.”

      End Sub

      代碼在For Each循環結構中使用If-Then語句來檢查每個單元格中的值,如果其值大于80,變量i就增加1。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:甘特圖是什么(甘特圖的概念)
      下一篇:報表表格的8號改到9號(報表表格的8號改到9號怎么弄)
      相關文章
      亚洲人成电影网站色www| 亚洲精品一区二区三区四区乱码 | 在线观看亚洲一区二区| 亚洲国产精品无码成人片久久| 国产天堂亚洲国产碰碰| 自拍偷自拍亚洲精品播放| 国产精品亚洲va在线观看| 国产成人高清亚洲一区久久| 亚洲av无码成人影院一区 | 亚洲人和日本人jizz| 亚洲图片校园春色| 久久久久se色偷偷亚洲精品av| 亚洲乱码日产精品BD在线观看| 亚洲综合色区中文字幕| 亚洲成年网站在线观看| 亚洲综合在线一区二区三区 | 亚洲13又紧又嫩又水多| 国产.亚洲.欧洲在线| 亚洲人成色77777在线观看| 亚洲大尺度无码无码专线一区| 国产区图片区小说区亚洲区| www亚洲一级视频com| 亚洲午夜精品久久久久久浪潮| 久久久久亚洲?V成人无码| 亚洲中文字幕无码一区| 久久亚洲精品无码| 亚洲AV成人片色在线观看高潮| 久久久久亚洲精品日久生情 | 无码专区一va亚洲v专区在线| 亚洲精品视频免费观看| 亚洲热线99精品视频| 亚洲国产成人私人影院| 亚洲第一网站免费视频| 亚洲卡一卡二卡乱码新区| 亚洲AV无码一区二区三区牲色| 亚洲人成无码网站久久99热国产| 亚洲人成色77777| 亚洲系列中文字幕| jiz zz在亚洲| 亚洲国产精品激情在线观看| 亚洲日韩欧洲乱码AV夜夜摸|