在这个问题之后:在另一个工作簿中获取值/图表而不打开它
我已经编码了这个:
Sub test()
Dim oConn As New ADODB.Connection
Dim rst As New ADODB.Recordset
oConn.Provider = "Microsoft.Jet.OLEDB.4.0"
oConn.Properties("Extended Properties").Value = "Excel 8.0"
oConn.Open "C:\Workbook1.xlsm"
rst.Open "SELECT * FROM [A1:A2];", oConn, adOpenStatic
rst.MoveFirst
MsgBox rst.Fields(0)
rst.Close
oConn.Close
End Sub
目前我的目标是获得cell A1
的sheet 1
价值workbook1.xlsm
。
我遇到了两个问题。
当workbook1
没有打开时,我得到了一个
Run time error '-214767259 (80004005)': Automation error Unspecified Error on the line oConn.Open "C:\Workbook1.xlsm`
这很烦人,因为我想在不打开工作簿的情况下工作。打开工作簿时效果很好。
第二个问题:我不能只获得一个单元格值。我试过只输入[A1]
,rst.open
但它不起作用。如何获得带有地址的唯一单元格值?用它的名字?