vba統(tǒng)計(jì)有數(shù)據(jù)的單元格行數(shù) vba里如何取得某個(gè)sheet的行數(shù)?
vba里如何取得某個(gè)sheet的行數(shù)?VBA非常簡(jiǎn)單。字典讀入數(shù)據(jù),然后進(jìn)行匹配。Sub test()帶Sheet1arr=應(yīng)用程序。轉(zhuǎn)置(Sheet1.Range(“d4:d68”)Set d=Cr
vba里如何取得某個(gè)sheet的行數(shù)?
VBA非常簡(jiǎn)單。字典讀入數(shù)據(jù),然后進(jìn)行匹配。
Sub test()
帶Sheet1
arr=應(yīng)用程序。轉(zhuǎn)置(Sheet1.Range(“d4:d68”)
Set d=CreateObject(”腳本.dictionary“)
對(duì)于I=10到23
對(duì)于M=1到UBound(ARR)
d(ARR(M))=d(ARR(M))。細(xì)胞(m3,一)
next M
it=d.items
“將提取的內(nèi)容寫(xiě)入表2中
對(duì)于n=3到500”取出一個(gè)月的行數(shù)作為循環(huán)的起點(diǎn)
如果Sheet2.Range(“a”&;n)=“2018.”&;Cells(3,I),則:a=Sheet2.Range(“a”&;n).Row
如果Sheet2.Range(“a”&;n)=“2018.”&;n.Cells(3,i 1)Then:b=Sheet2.Range(“a”&n).Row
Next n
表示r=a到b
num=Sheet2.Cells(r,“c”)
If num<>“”Then
Sheet2.Cells(r,“d”=d(num)
Else
End If
Next r]]Next
End with
End sub當(dāng)前工作表行總數(shù)K=activesheet.usedrange.rows行. count指定工作表1中的列總數(shù),j=工作表(“工作表1”)usedrange.columns.count列前提是頂部和左側(cè)沒(méi)有空行和空列
iRows=activesheet.usedrange.rows行.countiColumns=activesheet.usedrange.Columns文件. count“如果表的前幾行或前幾列可能為空,則需要獲取最下面的行和最右邊的列的數(shù)目:使用活動(dòng)表.usedrangeiEndRow=。行.計(jì)數(shù).row-1 iEndColumn=。列.計(jì)數(shù)。列-1以
~]結(jié)尾。Row
,獲取活動(dòng)工作表中a列的最大行數(shù),如圖所示。結(jié)果是12
代碼說(shuō)明:
activesheet:指當(dāng)前活動(dòng)的工作表。
范圍(“a65536”):指單元格a65536。為什么65536不是其他號(hào)碼?由于03版Excel的最大行數(shù)是65536,所以為了保證兼容性,一般用65536來(lái)表示最大行數(shù)。當(dāng)然,如果您使用07版Excel,并且您的數(shù)據(jù)可能超過(guò)65536行,您可以將數(shù)字改為1048576。行
:從下到上查找最后一個(gè)非空單元格并獲取其行號(hào)。
演示效果:
下面的代碼分別獲取BC列的最后一行。