excel圖表有條件的循環(1)—Do While循環

      網友投稿 601 2025-04-02

      excel圖表有條件的循環(1)—Do While循環

      在上一篇文章中,我們介紹的For-Next循環,能夠按照指定的數值進行有限次的循環。下面介紹在滿足指定的條件時才執行相應代碼塊的循環結構,先來看看Do While循環。

      按照慣例,先舉一個例子。下面的代碼從當前單元格開始,逐行顯示單元格的內容,直到碰到空單元格為止。如果第一個單元格就為空,則不會執行循環。

      Sub DoWhile0()

      i = 1 ‘初始化變量

      Do While Cells(i, 1).Value <> “”

      MsgBox “單元格A” & i & “的內容為:” & Cells(i, 1).Value

      i = i + 1

      Loop

      End Sub

      例如,在單元格區域A1:A5中依次輸入數字1、2、3、4、5,將當前單元格置于A1單元格(如所示),運行上面的代碼,將依次顯示數字1、2、3、4、5。

      Do While循環的基本語法結構如下:

      Do [While 條件語句]

      [語句塊]

      [Exit Do]

      [語句塊]

      Loop

      或者:

      Do

      [語句塊]

      [Exit Do]

      [語句塊]

      Loop [While 條件語句]

      說明:

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

      條件語句可以放在循環的開始處或者結尾處。如果放在開始處,那么先評估條件,滿足條件要求,就執行循環里面的語句;這種情況下,當始終不滿足條件時,就有可能一次也不會執行循環里面的語句。如果放在結尾處,則至少會執行一次循環里面的語句。

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

      將條件放置在結尾處,前面的示例代碼修改如下:

      Sub DoWhile01()

      i = 1 ‘初始化變量

      Do

      MsgBox “單元格A” & i & “的內容為:” & Cells(i, 1).Value

      i = i + 1

      Loop While Cells(i, 1).Value <> “”

      End Sub

      此時,如果單元格A1為空,也會顯示一條消息框,然后退出循環。

      用框圖分別表示Do While循環的兩種語法形式如下:

      如果熟悉了Excel中的常用對象及其屬性,也可以將上面的代碼修改如下,實現相同的結果。

      Sub DoWhile1()

      Do While ActiveCell.Value <> “”

      MsgBox “當前單元格的內容為:” & ActiveCell.Value

      ActiveCell.Offset(1, 0).Activate

      Loop

      End Sub

      其中,Offset屬性表示下移一個單元格,即當前單元格下面的單元格。(單元格的常用屬性將在后續文章中詳細介紹)

      將條件放置在結尾處,前面的示例代碼修改如下:

      Sub DoWhile2()

      Do

      MsgBox “當前單元格的內容為:” & ActiveCell.Value

      ActiveCell.Offset(1, 0).Activate

      Loop While ActiveCell.Value <> “”

      End Sub

      下面,為更深入理解Do While循環,我們來改寫上一篇中用來說明For-Next循環的示例。

      示例1:如果想要在工作表單元格區域A1:A10中依次填寫數字1至10,也可以使用下面的包含Do While循環的代碼:

      Sub DoWhile3()

      i = 1 ‘給變量賦初始值

      ‘循環

      Do While i <= 10

      Cells(i, 1).Value = i

      i = i + 1

      Loop

      End Sub

      注意,與For-Next循環不同的是,在進入循環之前,需要先給變量i賦初始值。在循環中,還需要能夠增加變量的值。

      示例2:下面的代碼使用Do While循環求1至100的和,并顯示結果。

      Sub DoWhile4()

      Dim i As Integer

      Dim sum As Integer

      ‘給變量賦初值

      i = 1

      sum = 0

      ‘循環并顯示結果

      Do While i <= 100

      sum = sum + i

      i = i + 1

      Loop

      MsgBox “1至100的和為:” & sum

      End Sub

      示例3:下面的代碼使用Do While循環求1至100之間的偶數和并顯示結果。

      Sub DoWhile5()

      Dim i As Integer

      Dim sum As Integer

      ‘給變量賦初值

      i = 1

      sum = 0

      ‘循環并顯示結果

      Do While i <= 100

      If (i Mod 2 = 0) Then

      sum = sum + i

      End If

      i = i + 1

      Loop

      MsgBox “1至100的和為:” & sum

      End Sub

      在編寫程序時,我們可以使用多種方法實現想要的結果,您可以根據具體情況選擇實現方式,這也是編程的一大美妙之處。

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

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

      上一篇:創建型模式之單例模式
      下一篇:excel使用公式合并單元格內容的教程
      相關文章
      亚洲永久在线观看| 亚洲国产电影在线观看| 亚洲精品无码av中文字幕| 久久亚洲日韩看片无码| 亚洲最新视频在线观看| 亚洲欧洲第一a在线观看| 久久久影院亚洲精品| 久久久久亚洲精品成人网小说| 77777亚洲午夜久久多人| 亚洲日本一区二区一本一道| 亚洲日本一区二区一本一道| 亚洲日韩在线第一页| 久久久青草青青国产亚洲免观 | 怡红院亚洲怡红院首页| a级亚洲片精品久久久久久久 | 亚洲最大AV网站在线观看| 国产成人精品日本亚洲专区61 | 亚洲综合激情五月丁香六月| 亚洲影视自拍揄拍愉拍| 亚洲午夜精品一区二区麻豆| 亚洲国产精华液2020| 全亚洲最新黄色特级网站 | 亚洲欧洲国产视频| 亚洲综合校园春色| 亚洲色大成网站www尤物| 亚洲AV永久无码精品一福利| 大胆亚洲人体视频| 亚洲国产一区二区三区| 红杏亚洲影院一区二区三区 | 亚洲色成人四虎在线观看| 亚洲av中文无码字幕色不卡| 亚洲国产精品成人| 亚洲香蕉网久久综合影视| 亚洲爱情岛论坛永久| 亚洲美女aⅴ久久久91| 久久精品国产亚洲AV久| 亚洲精品久久无码| 亚洲片一区二区三区| 亚洲精品高清无码视频| 在线电影你懂的亚洲| 亚洲三级视频在线观看 |