【问题标题】:VBA - ADODB.Connection to read from ExcelVBA - ADODB.Connection 从 Excel 中读取
【发布时间】:2014-03-04 18:29:42
【问题描述】:

使用 ADODB.Connection 从 Excel 文件中读取数据是否真正打开了 excel 文件?

使用 ADODB 与使用 GetObject() 通过 VBA 打开文件并读取数据(屏幕更新 = false)相比是否有性能优势?

GetObject() 似乎有时需要一段时间才能打开文件,具体取决于文件。我想要一个更“轻量级”的替代方案来从 excel 文件中提取数据。

【问题讨论】:

  • 虽然是主观的,但我觉得 ADO 连接所涉及的开销比通过 GetObject 拥有完整的应用程序要少。你需要它不打开文件吗?您需要 Excel 提供的功能还是只需要访问数据?
  • 我需要访问数据,我还想将其拉入工作表中以进行进一步处理。我不需要它来不打开文件,本身。如果可能的话,我只想找到一种开销较小的方法(或最好的方法)。
  • 对不起,我一定错过了您的附加信息。 ADO 一直到这个。

标签: vba excel adodb


【解决方案1】:

除非您需要 Excel 固有的功能,否则我通常会使用 ADO 连接。

Dim cn as ADODB.Connection
Set cn = New ADODB.Connection
With cn
    .Provider = "Microsoft.Jet.OLEDB.4.0"
    .ConnectionString = "Data Source=C:\MyFolder\MyWorkbook.xls;" & _
"Extended Properties=Excel 8.0;"
    .Open
End With

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-10-02
    • 2016-05-23
    • 2012-04-30
    • 1970-01-01
    • 2018-12-05
    • 2013-07-09
    • 2011-04-26
    • 1970-01-01
    相关资源
    最近更新 更多