Recordset不会返回所有数据VBA

时间:2017-01-23 20:19:15

标签: sql excel vba ms-access

我在尝试从记录集中提取一些数据时遇到了一些问题,vba代码就像这样简单:

cnt.Open stDB

Query = "SELECT TriggerDescription,"
Query = Query & " FROM Research_Control"
Query = Query & " WHERE (((Research_Control.Status) = 1))"
Query = Query & " ORDER BY Research_Control.Enterprise;"

rs.Open Query, cnt, adUseClient

    While Not rs.EOF

        Sheets("Research_Review").Cells(lineResearch + line, colResearch) = rs.Fields(0)

        line = line + 1
        rs.MoveNext

    Wend

rs.Close

cnt.Close 

“TriggerDescription”大小与500个字符一样大,当我将此值复制到excel中的单元格时,它只出现在300个字符

所以我的问题是:如何从记录集中提取所有数据?

PS:我已经尝试用“cnt.CommandTimeout = 60”更改超时,但它不起作用

编辑:在表格设计中,字段“TriggerDescription”是ntext DataType FYI。

1 个答案:

答案 0 :(得分:1)

@ A.S.H给出了答案,使用CopyFromRecordset我可以将所有数据复制到单元格

Sheets("Test").Range("test").CopyFromRecordset rs