vba 跳到下一个循环_遍历工作薄和工作表(For Each循环的利用)
生活随笔
收集整理的這篇文章主要介紹了
vba 跳到下一个循环_遍历工作薄和工作表(For Each循环的利用)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
今日的內容是“VBA之EXCEL應用”的第三章“工作簿(Workbook)和工作表(Worksheet)對象(Object)”中第三節“遍歷工作薄和工作表(For Each循環的利用)”。“VBA之EXCEL應用”這套教程從簡單的錄制宏的講解,一直到窗體的搭建,內容豐富,案例眾多。大家可以非常容易的掌握相關的知識,這套教程面向初學人員,共三冊,十七章,都是我們在利用EXCEL工作過程中需要掌握的知識點,希望大家能掌握利用。
有啟發 點在看?朋友分享約作者 請留言?直接交流
第三節 遍歷工作薄和工作表(For Each循環的利用)
大家好,我們在這講中將講解遍歷循環語句,這種語句在VBA代碼中利用的十分普遍,也是我們在VBA代碼中經常利用的三種循環語句之一:For Each循環。下面我們將看到Excel vba中的一個程序,它遍歷循環所有打開的工作簿和工作表,并顯示所有的名稱。1? For Each...Next 語句講解
語法:For Each?element?In?group[?statements?][?Exit For?][?statements?]Next?[?element?]參數:1)element 必需。用于循環訪問集合或數組的變量。對于集合,element只能為Variant變量、通用對象變量或任何特定的對象變量。對于數組,element僅可是Variant變量。2)group 必需。對象集合或數組(用戶定義類型除外)的名稱。3)statements?? 可選。在每個項目上執行的一個或多個語句。注意點:l如果group中有至少一個元素,則進入“For Each”循環。在進入循環后, 循環中的所有語句都將對group中的每一個元素執行。如果group中有多個元素,則繼續為每個元素執行循環中的語句。group中不再有元素時,退出循環并繼續執行“Next”語句后的語句。l可以將任意數量的Exit For語句作為另一種退出方式放置在循環中的任何位置。"退出" 通常在評估某些條件后使用, 例如,if…then…, 將執行下一個緊接著的語句。l可通過將“For Each...Next”循環放置在另一個該循環內來嵌套“For...Each...Next”循環。 但是,每個循環element必須是唯一的。l如果忽略Next?[?element?] 語句中的[?element?],循環一樣繼續執行。不可隨用戶定義類型的數組一起使用“For Each...Next”語句,因為“Variant”不可包含用戶定義類型。2? 遍歷工作薄和工作薄的代碼
下面代碼中,我們將利用“For Each...Next”語句遍歷所有打開的工作薄和每個工作薄的工作表的名稱。Sub mynzH() '遍歷循環Dim?book As Workbook, sheet As Worksheet, text As StringFor?Each book In Workbookstext?= text & "Workbook: " & book.Name & vbNewLine & "Worksheets: " & vbNewLineFor?Each sheet In book.Worksheetstext?= text & sheet.Name & vbNewLineNexttext?= text & vbNewLineNextMsgBox textEnd Sub代碼截圖:代碼講解:1) Dim book As Workbook, sheet As Worksheet, text As String 這句是對變量的聲明,聲明book、sheet、text分別為Workbook、Workbook、String。2) For Each sheet In book.Worksheetstext?= text & sheet.Name & vbNewLineNext以上是內層循環,將提取每個工作表的名稱。3) For Each book In Workbookstext?= text & "Workbook: " & book.Name & vbNewLine & "Worksheets: " & vbNewLine。。。。。text?= text & vbNewLineNext以上是外層循環講提取每個工作薄的名稱。4) MsgBox text將彈出一個對話框,告訴用戶提取的內容。l注意:可以使用&運算符連接(聯接)元素。若要開始新行,可以使用vbNewLine。3? 代碼執行的效果
我們先添加一個空白的工作薄,然后運行上述代碼:我們看到,最后彈出的對話框中包括每個打開的工作薄名稱及每個工作薄中工作表的名稱。今日內容回向:1) 什么是遍歷語句?2) 遍歷語句的語法是什么樣的?3)?? 如何應用遍歷語句?本講內容參考程序文件:工作簿03.xlsm分享成果,隨喜正能量VBA的應用范圍及學習方法:
VBA是利用Office實現個人小型辦公自動化的有效手段(工具)。這是我對VBA的應用界定。在取代OFFICE新的辦公軟件沒有到來之前,誰能在數據處理方面做到極致,誰就是王者。其中登峰至極的技能非VBA莫屬!我記得20年前自己初學VBA時,那時的資料甚少,只能看源碼自己琢磨,真的很難。20年過去了,為了不讓學習VBA的朋友重復我之前的經歷,我根據自己多年VBA實際利用經驗,推出了七部VBA專門教程。第一套:VBA代碼解決方案 ?是VBA中各個知識點的講解,教程共147講,覆蓋絕大多數的VBA知識點,提供的程序文件更是一座不可多得的代碼寶庫,是初學及中級人員必備教程;目前這套教程提供的版本是修訂第二版,程序文件通過32位和64位兩種OFFICE系統測試。第二套:VBA數據庫解決方案 ?數據庫是數據處理的專業利器,教程中詳細介紹了利用ADO連接ACCDB和EXCEL的方法和實例操作,適合中級人員的學習。目前這套教程提供的是修訂第一版教程,程序文件通過32位和64位兩種OFFICE系統測試。第三套:VBA數組與字典解決方案?? 數組和字典是VBA的精華,字典是VBA代碼水平提高的有效手段,值得深入的學習,是初級及中級人員代碼精進的手段。目前這套教程提供的版本是修訂第一版,程序文件通過32位和64位兩種OFFICE系統測試。第四套:VBA代碼解決方案之視頻 ?是專門面向初學者的視頻講解,可以快速入門,更快的掌握這門技能。這套教程是第一套教程(修訂一版)的視頻講解,視頻更易接受。第五套:VBA中類的解讀和利用 這是一部高級教程,講解類的虛無與肉身的度化,類的利用雖然較少,但仔細的學習可以促進自己VBA理論的提高。這套教程的領會主要是讀者的領悟了,領悟一種佛學的哲理。目前這套教程提供的版本是修訂第一版,程序文件通過32位和64位兩種OFFICE系統測試。第六套教程:VBA信息獲取與處理,這是一部高級教程,涉及范圍更廣,實用性更強,面向中高級人員。教程共二十個專題,包括:跨應用程序信息獲得、隨機信息的利用、電子郵件的發送、VBA互聯網數據抓取、VBA延時操作,剪切板應用、Split函數擴展、工作表信息與其他應用交互,FSO對象的利用、工作表及文件夾信息的獲取、圖形信息的獲取以及定制工作表信息函數等等內容。程序文件通過32位和64位兩種OFFICE系統測試。第七套教程:VBA之EXCEL應用 ?這是一部初級教程這部教程共三冊,從從創建宏、對話框、工作簿和工作表對象、單元格對象等基礎內容講起,到循環結構、錯誤處理、字符串操作、日期和時間、事件、數組應用,函數過程等方面,一直講解到控件和窗體對象的應用都是我們提高自己EXCEL水平的必須。以上各教程學習順序:7 1 3 2 6 5或者7 4 3 2 6 5。其中第四套是對第一套的視頻講解,所以第一和第四只選其一即可。可以W^e^C^h^a^t:VBA6337(或者NZ9668),兩個對象是都是可以的。_______________________________
有啟發 點在看?朋友分享約作者 請留言?直接交流
更多關聯閱讀
總結
以上是生活随笔為你收集整理的vba 跳到下一个循环_遍历工作薄和工作表(For Each循环的利用)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 拼装机器人感想_学习制作机器人的感想作文
- 下一篇: mysql和springboot对照_S