Excel VBA我应该使用数组还是队列? w /标准作为parameter passing
我有一个2500行,65列的数据集。 我有一个特定的标准集,而不是涉及大于/小于>
/ <
,需要在每行上评估的AND
, OR
和Like
运算符。
例如:
如果列2等于1007001500
或1007000510
AND列3 > 25
AND < 25
和列4等于"asset"
和列5等于"S"
那么我需要为此行分配一个唯一的值或换句话说,我需要分类此行进入这个2500 R x 65 C数据集(这是一个导入的Excel文件)的10个类别中的1个。
我对一维和二维数组相当熟悉,并且已经将所有的逻辑导入到一维或二维数组中。 我在这一点上决定是否评估1行和1列的一个长的一维数组string中的逻辑,或者是在二维数组中将每个类别的逻辑分隔成一个单独的行的更大的二维数组。
但是我也到了这个问题, 有没有更好的数据结构方法? 我已经简要研究了Excel VBA Queues
,并转向了这里获取更多的专业知识。
我的数据集总是会有相同的列标签,我可以用来评估。 但是, 我的逻辑标准总是受到macros用户的改变。 所以我正在寻找一种方法,基本上通过我所有的标准作为参数的数据结构。
数组/matrix是在VBA中处理数据的好方法。 这里是我存储这样的数据的方式:
LRL = Cells(Rows.Count, 1).End(xlUp).Row 'COunts the rows LCL = Cells(2, Columns.Count).End(xlToLeft).Column 'Counts the columns ReDim Level_Array_Unsort(LRL, LCL) 'Dimensionalizes the matrix 'This stores the data For i = 1 To LRL For j = 1 To LCL Level_Array_Unsort(i, j) = Cells(i, j) Next j Next