vba將一列range賦值給數(shù)組 VBA中如何利用動(dòng)態(tài)數(shù)組去除重復(fù)值?
VBA中如何利用動(dòng)態(tài)數(shù)組去除重復(fù)值?方法1dim a(9)為整數(shù)dim b()為整數(shù)dim I為整數(shù),j為整數(shù)ReDim preserve b(0)b(0)=a(0)對(duì)于I=1到UBound(a)對(duì)于
VBA中如何利用動(dòng)態(tài)數(shù)組去除重復(fù)值?
方法1
dim a(9)為整數(shù)
dim b()為整數(shù)
dim I為整數(shù),j為整數(shù)
ReDim preserve b(0)
b(0)=a(0)
對(duì)于I=1到UBound(a)
對(duì)于j=0到UBound(b)
如果a(I)=b(j),則轉(zhuǎn)到網(wǎng)絡(luò),如果相同,跳出
下一步
ReDim preserve B(UBound(B)1)
B(UBound(B))=a(I)
net:跳轉(zhuǎn)到這里,匹配下一個(gè)數(shù)據(jù)
下一步
a=B]]方法2,有10個(gè)數(shù)字。首先找出最大數(shù),根據(jù)這個(gè)數(shù)定義一個(gè)數(shù)組,并將相應(yīng)的值寫入相應(yīng)的元素中。最好先設(shè)置一個(gè)默認(rèn)值
dim a(9)為整數(shù)
dim I為整數(shù),temp as integer
temp=a(0)
對(duì)于I=1到(a)
如果a(I)> temp then
temp=a(I)
如果結(jié)束
下一個(gè)I
重新定義B(temp)as integer
對(duì)于I=0到UBound(a)
B(a(I))=a(I)
下一個(gè)
如何使用find函數(shù)在數(shù)組中查找?此函數(shù)只能用于在工作表中查找嗎?請(qǐng)向大師請(qǐng)教如何改正代碼。錯(cuò)誤類型:需要在數(shù)組()dim a,arrdim s%I=[a65536]中查找object sub。結(jié)束(3)。Rowa=范圍(“A1:C”和&I)ReDim arr(1到I,1到1)對(duì)于S=1到IARR(S,1)=a(S,1)&I a(S,2)&a(S,3)Nextk=排列查找([F1],,xlvalues,xlwhole,xlbycolumns,xlnext)。數(shù)組中“從下到上”的行,以查找滿足條件的第一個(gè)值行的編號(hào)。這個(gè)錯(cuò)誤發(fā)生在這個(gè)句子里。“msgbox End Sub
謝謝
!Excel函數(shù)通常處理10W線以內(nèi)的數(shù)據(jù),建議10W線以上使用VBA或access。