You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Excel 2010在Win11下ADO连接文件失败,报_Connection对象Properties方法错误

解决Windows11+Excel2010下ADO VBA连接报错问题

问题复现

在Windows11系统的Excel2010中运行ADO VBA代码时,adoCN.Properties("Data Source") = myFile行报错:Method 'Properties' of object '_Connection' failed,此前在Windows7+Excel2010环境下可正常运行。

解决方案

1. 修改连接字符串写法(优先尝试)

不要单独设置Connection对象的Properties属性,直接将所有连接参数整合到Open方法中,这能避免属性访问失败的问题。修改后的完整代码如下:

Sub Test()
    'Haluk - 19/07/2023
    
    Dim adoCN As Object, RS As Object
    Dim myFile As String, strSQL As String
    
    myFile = ThisWorkbook.FullName
    
    Set adoCN = CreateObject("ADODB.Connection")
    Set RS = CreateObject("ADODB.Recordset")
    
    ' 直接通过Open方法传入完整连接字符串
    adoCN.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & myFile & ";Extended Properties=""Excel 12.0 Macro; HDR=Yes; IMEX=1"""
    
    strSQL = "Select * From [Sheet1$]"
    
    RS.Open strSQL, adoCN
    
    Sheets("Sheet2").Range("A2").CopyFromRecordset RS
    
    Set RS = Nothing
    Set adoCN = Nothing
End Sub

2. 检查ACE驱动兼容性

Windows11多为64位系统,需确保安装的ACE驱动版本与Excel2010的位数匹配:

  • 若Excel2010是32位,安装32位版Microsoft Access Database Engine 2010 Redistributable;
  • 若Excel2010是64位,安装64位版。
    安装时需关闭所有Office程序,若提示冲突,可使用静默安装命令(以32位为例):
msiexec /i AccessDatabaseEngine.exe /passive

3. 提升程序运行权限

右键Excel图标,选择以管理员身份运行,再打开目标文件执行代码,规避Windows11的UAC权限限制。

4. 确认文件夹权限

检查C:\TestFolder的权限:右键文件夹→属性→安全,确保当前用户拥有读写权限,避免因路径权限不足导致连接失败。

内容的提问来源于stack exchange,提问作者Haluk

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 16:32:32