许多人在Excel/VBA中使用大量数组来存储数据列表.但是,在我看来,收集对象更方便(主要是:不需要重新定义列表的长度).
所以,我真诚地问自己,我是否遗漏了什么?为什么其他人仍然使用数组来存储数据列表?这只是过去的宿醉吗?
我有一个prLst()可变长度的全局数组.这需要在数字作为字符串"1"来Ubound(prLst).但是,当用户输入时"0",我想从列表中删除该元素.我编写了以下代码来执行此操作:
count2 = 0
eachHdr = 1
totHead = UBound(prLst)
Do
If prLst(eachHdr) = "0" Then
prLst(eachHdr).Delete
count2 = count2 + 1
End If
keepTrack = totHead - count2
'MsgBox "prLst = " & prLst(eachHdr)
eachHdr = eachHdr + 1
Loop Until eachHdr > keepTrack
Run Code Online (Sandbox Code Playgroud)
这不起作用.prLst如果元素是"0"?如何有效删除数组中的元素?
注意:这是较大程序的一部分,可在此处找到相关说明:排序行组Excel VBA宏