如标题中所述,我遇到了以下代码的连接问题:
Set xl = New Excel.Application
Set cn = New ADODB.Connection
Set rs = New ADODB.Recordset
Set wb = xl.Workbooks.Open(fileName)
Set ws = wb.Sheets("Sheet1")
cn.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & fileName & ";Extended Properties='Excel 8.0;HDR=YES;IMEX=1;';"
我试图将数据从“ * .xls”文件导入到Access表中,同时在输入之前对原始数据进行一些编辑。
我想这是cn.Open部分触发了该错误,但是不确定我应该更改哪个部分来修复它。
预先感谢所有帮助。
答案 0 :(得分:1)
使用双双引号分隔OLEDB连接字符串中的字符串:
cn.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & fileName & ";Extended Properties=""Excel 8.0;HDR=YES;IMEX=1;"";"
就像在VBA中一样,OLEDB要求字符串用双引号而不是单引号定界。
由于双引号是VBA中的字符串定界符,因此您需要将双引号加倍才能转义。