在消息框中显示数据库提取的数组

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (5)

我需要在消息框中显示来自Access数据库的一组记录,或者仅在不向工作簿添加工作表的情况下用于查看的任何形式。

信息分为9个字段,每个条目最多15行。我已经尝试了几种显示信息的形式,但它们不起作用,或者在工作簿中添加另一张表。使用工作簿的环境仅用于数据和打印捕获。显然,我已经覆盖了数据库连接,唯一的问题是显示信息。

Private Sub Srch_Click()
 Dim A As Object, rs As Object, sSQL As String, CN As String, Arr As Variant, FL As Long, txt As String, i As Long
 FL = tbFolio.Value - 1
    Set A = CreateObject("ADODB.Connection")
    CN = "Provider=Microsoft.ACE.OLEDB.12.0;" & _
        "Data Source=S:\Common\Quality\RASTREABILIDAD\MAIN PROJECT\PROYECTO KOREANO MX.accdb;"
    sSQL = "SELECT * FROM Trazabilidad WHERE Folio = " & (FL) & ";"
    A.Open CN
    Set rs = A.Execute(sSQL)
    Arr = rs.GetRows
    MsgBox Arr, vbOKOnly, Trazabilidad

    rs.Close
    A.Close
Unload Me
End Sub

在调试中,代码的突出显示部分是:

MsgBox Arr, vbOKOnly, Trazabilidad

错误消息是

“错误'13':类型不匹配”

我一直在思考如何去做,我很感激任何帮助。提前致谢。

提问于
用户回答回答于

@Alex K.说得对,一个好的解决方案是循环记录集。

但是,您可能会发现将数据复制到工作表然后使用以下代码处理它是有用的:

mysheet.Range("A2").CopyFromRecordset rs

扫码关注云+社区

领取腾讯云代金券