无法在查询中将值从查询分配给数组变量

时间:2014-04-08 16:03:19

标签: ms-access

我有一个带有cols DATE,TYPE,VALUE的查询OUTPUT。我需要将所有不同的日期收集到一个变量中,以便稍后我可以为每个唯一的DATE创建一个CSV文件。 我尝试创建一个记录集,并将DATE的值分配给变量:

Sub GetDates()
    Dim rst As Recordset
    Dim db As Database
    Dim arrDates As Variant

    Set db = CurrentDb
    Set rst = db.OpenRecordset("SELECT Date FROM OUTPUT GROUP BY DATE; ")
    arrDates = rst.GetRows()

但是当我这样做时:

For Each Item In arrDates
    Debug.Print (Item)
Next

我只打印了一个日期(11/01/2012)。如果我在Access中运行查询,我会看到所有15个月。

1 个答案:

答案 0 :(得分:0)

我必须指定行数:     arrDates = rst.GetRows(rst.RecordCount)

Remou推荐的更好的解决方案:

Do Until rst.EOF
    Debug.Print rst!Date
    rst.MoveNext
Loop

编辑:我正在阅读错误的MSDN帮助。