VBA - ADODB.Connection从Excel中读取
问题描述:
是否使用ADODB.Connection从Excel文件读取数据实际上打开了Excel文件?
使用ADODB与使用GetObject()通过VBA打开文件并读取数据(使用屏幕更新= false)是否有性能优势?
GetObject()似乎需要一段时间才能打开文件,具体取决于文件。我想要一个更轻量级的替代方案来从excel文件中提取数据。VBA - ADODB.Connection从Excel中读取
答
除非您需要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
虽然它是主观的,但我觉得ADO连接的开销要比通过GetObject完整应用程序少。你需要它来打开文件吗?你需要Excel提供的功能还是只需访问数据? –
我需要访问数据,我也想把它放到工作表中作进一步处理。 我不需要它来打开文件,本身。我只想找到一种方法(或最好的方法),尽可能减少开销。 –
对不起,我一定错过了你的额外信息。 ADO一直为这一个。 –