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

Excel VBA连接Vertica时Refresh BackgroundQuery报运行时1004错误

问题原因排查及解决方法

首先修正代码明显错误

你提供的代码中存在变量名拼写不一致问题,本地可运行大概率是本地有之前调试残留的同名对象,新环境没有就会触发报错:

你在代码中先定义了变量 campaign_Table,但后续筛选行时误写为 campaignbygeo_Table,请先修正该行代码:

' 原错误代码
#"Filtered Rows"" = Table.SelectRows(campaignbygeo_Table, each [CampaignID]=" & CID & " ),"
' 修正后
#"Filtered Rows"" = Table.SelectRows(campaign_Table, each [CampaignID]=" & CID & " ),"

其他常见排查方向

  • 确认Power Query组件状态
    • Excel 2016及以上版本:检查「文件-选项-自定义功能区」是否已勾选启用Power Query,确认相关功能未被组策略禁用
    • Excel 2013/2010版本:确认已单独安装Power Query插件,且在COM加载项中处于启用状态
    • 确认Microsoft.Mashup.OleDb.1提供者已正常注册,可通过修复Office安装解决缺失问题
  • 排查配置差异
    • 确认同事设备的Vertica ODBC DSN名称完全匹配Vertica(大小写敏感),且ODBC驱动位数和Office位数一致(32位Office对应32位ODBC,64位对应64位)
    • 检查Power Query隐私级别设置:路径为「数据-获取数据-查询选项-隐私」,可选择「忽略隐私级别以提高性能」,避免跨数据源权限拦截
  • 避免资源冲突
    • 在创建新的campaign查询前,先删除已存在的同名查询,避免重名冲突:
    On Error Resume Next
    ActiveWorkbook.Queries("campaign").Delete
    On Error GoTo 0
    
  • 验证变量正确性
    • 调试确认CID变量在同事设备运行时已正确赋值,不存在空值、格式错误导致筛选条件语法异常的问题

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 09:27:03