使用 Excel 和 VBA,我想要一些关于如何严格使用 VBA 最好地过滤数组中的数据(以同样的方式使用数据透视表)的建议。我正在创建一个用户窗体,它将根据当前现有数据做出一些数据决策。我可以想象如何做得足够好,但我并不精通 VBA 编程。
这是一个例子
A B C
bob 12 Small
sam 16 Large
sally 1346 Large
sam 13 Small
sally 65 Medium
bob 1 Medium
要获取数组中的数据,我可以使用
Dim my_array As Variant
my_array = Range("A1").CurrentRegion
现在,我熟悉循环遍历二维数组,但我想知道:过滤二维数组数据的最有效方法是什么(无需一次又一次地循环遍历数组)?
例如,我如何得到会说得到这种数据:
data_for_sally As Variant 'rows with sally as name in ColA
data_for_sally_less_than_ten As Variant ' all rows with sally's name in ColA and colB < 10
data_for_all_mediums as Variant ' all rows where ColC is Medium
建议?我可以用一堆自定义函数和循环来解决这个问题,但我认为必须有更好的方法。谢谢。