VBA中的循環(huán)代碼的使用
最近,我在自學(xué)VBA,有了之前的Python基礎(chǔ),感覺學(xué)起VBA也比較輕松。畢竟VBA和Python一樣都是面向?qū)ο蟮木幊陶Z言。通過自學(xué),我基本上掌握了VBA的循環(huán)方法,以下是我的簡單筆記和大家一起分享。
一、循環(huán)填充單元格
1.通過for循環(huán)和Cells()來填充A列1至10行單元格為1, 2, 3...10,代碼如下:
Sub 填充單元格() Dim i As Integer For i = 1 To 10 ? ? Cells(i,1)= i Next i End Sub
2. 通過for循環(huán)和Range()來填充數(shù)字
Sub 填充單元格2() Dim i As Integer For i = 1 To 10 Range("A" & i)= i Next i End Sub
3. 另類解法
通過定義Range對象,然后遍歷對象中的元素,此種方法融合了上面二種方法。
Sub 填充單元格3() Dim col as integer Set col = Range("A1:A10") For Each cell In col cell.Value = cell.Row() Next cell End Sub
二、循環(huán)遍歷工作表
1.通過Worksheets.count來獲取工作表的總數(shù)來進(jìn)行for循環(huán)。 以下代碼實(shí)現(xiàn)用for循環(huán)來把每一個工作表的第一個單元格填充為工作表的表名。
Sub 循環(huán)工作表() Dim i As Integer For i = 1 To Worksheets.Count '用worksheets.count獲取工作表的數(shù)量 Worksheets(i).Range("A1") = Worksheets(i).Name Next i End Sub
2. 利用for each ... in 來循環(huán)遍歷工作表
這種方法的核心是定義工作表對象sht,然后對工作表集合對象進(jìn)行遍歷。
Sub 循環(huán)工作表2() Dim sht As Worksheet For Each sht In Worksheets sht.Range("A1") = sht.Name Next sht End Sub
三、循環(huán)遍歷工作簿
也就是遍歷Excel文件,假定所有文件均已經(jīng)打開。這里提供兩種方法:第一種是對象法,代碼如下:
Sub 循環(huán)工作簿() For Each wb In Workbooks For Each sht In wb.Worksheets sht.Range("A1") = wb.Name Next sht Next wb End Sub
第二種是切片法,實(shí)現(xiàn)的功能依然是在每個工作表的A1單元格中填充當(dāng)前工作表的表名。
Sub 循環(huán)工作簿() Dim i, m As Integer For i = 1 To Workbooks.Count For m = 1 To Worksheets.Count Worksheets(m).Range("A1") = Worksheets(m).Nam Next m Next i End Sub
四、注意事項(xiàng)
for循環(huán)是成對的,一定要注意加上next X, 否則程序就會報錯。
VBA的循環(huán)大概分二種,一種是對象法,一種是切片法,推薦用對象法,不用考慮對象的數(shù)量。
標(biāo)識單元格可以用Range和Cells兩種方法,各有優(yōu)劣,可以有選擇地使用。
與Python編程不同的是,VBA編程中要提前定義對象類型,因此它的代碼執(zhí)行速度會比Pythong更快。
到此這篇關(guān)于VBA中的循環(huán)代碼的使用的文章就介紹到這了,更多相關(guān)VBA 循環(huán)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Excel·VBA合并工作簿的實(shí)現(xiàn)示例
本文主要介紹了Excel·VBA合并工作簿的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-01-01Excel?VBA按列拆分工作表和工作簿的實(shí)現(xiàn)
表格拆分是常見的數(shù)據(jù)處理,本文主要介紹了Excel?VBA按列拆分工作表和工作簿的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-01-01VBA數(shù)組去重(字典去重多種方法+數(shù)組去重2種方法)
本文主要介紹了VBA數(shù)組去重(字典去重多種方法+數(shù)組去重2種方法),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-08-08