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

VBA写入IF条件公式触发运行时错误'1004',求解决方案

VBA运行时错误1004修复方案

核心错误原因

你代码中使用Formula属性写入公式时,采用了分号作为参数分隔符,但VBA的Formula属性默认遵循美式Excel语法规则,要求使用英文逗号作为公式参数分隔符,语法不匹配触发了1004错误。

可行修复方案

  • 方案1:将公式内的分号替换为英文逗号,保持使用Formula属性即可:
sh.Range("$K$3:$K$" & lastR).Formula = "=IF($I3<>""Not Found"",$I3,"""")"
  • 方案2:如果你需要适配本地Excel的分号分隔符使用习惯,将Formula属性替换为FormulaLocal即可,无需修改公式内容:
sh.Range("$K$3:$K$" & lastR).FormulaLocal = "=IF($I3<>""Not Found"";$I3;"""""")"

补充说明

你代码中对双引号的转义写法没有问题,无需调整。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 18:18:04