我有一个来自en SQL服务器的记录集。我不知道我需要检索的确切数据量,因此我创建了一个动态数组。 我需要做的是将数据放入数组中时分离和排序数据。但我不知道最佳做法是什么。VBA数组确定下一个值的位置
E.g.我有一组数据,其中一列中的客户ID和第二个中的收入。可以说,我只有2个客户和有类似下面的列表:
Customer ID Revenue
1 604
2 669
2 732
2 629
1 897
2 530
然后,我会像我的阵列有两个维度(顾客1和2),并具有与最高金额相匹配的最大lenght一位顾客所购买的商品。在这种情况下,客户2已经做了四次采购,客户1已经做了两次。因此,我理想的数组就是这样的:myArray(1到2,4)。
我该如何做到最好?
然后,我定义了我的数组后,我想用我的数据填充它,但数据没有排序,那么我怎么能确定我应该在什么地方放置数据呢?如果这使得感知?
比如我最初的想法是通过数据集运行,做这样的事情:
i = 1
do until dataset.eof
if dataset.field("customerid") = 1 then
myArray(1, i) = dataset.field("customerid").value
else if dataset.field("customerid") = 2 then
myArray(1, i) = dataset.field("customerid").value
end if
i = i + 1
dataset.movenext
loop
这是所有罚款和花花公子,直到客户ID变化。如果第一行为客户1,则数据将被放置在myArray(1,1)和myArray(1,2)中。但是,如果我下一行的客户ID是客户2,则客户2的第一个条目将在myArray(2,3)中,而不是myArray(2,1),这是我所希望的。 此外,如果按照我的第一个问题定义数组,我将超出数组的极限:-)
这是否有意义?
在此先感谢:-)
将它置入某种数组只是故事的一半:你打算如何在那之后做* –