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

VBA创建含字符串、单元格及工作表引用的公式报错求助

问题解决:VBA设置公式出现#NAME?错误

错误原因

你当前的代码错误地将VBA变量Consol_Sheet.Name直接嵌入到公式字符串内部,Excel会把它当成公式里的未知名称,从而抛出#NAME?错误;同时公式的拼接逻辑也不符合Excel公式的语法要求。

正确代码实现

要生成目标公式= "Sample: " & 'Test 1 - 520 psf'!B5,需要通过VBA字符串拼接将工作表名变量的值插入到公式中,同时处理好引号转义:

Dim Consol_Sheet As Worksheet
Set Consol_Sheet = Sheets("Test 1 - 520 psf")
' 拼接公式字符串:将工作表名变量插入,同时处理Excel公式的引号和工作表引用格式
ActiveSheet.Range("B3:J3").FormulaR1C1 = "= ""Sample: "" & '" & Consol_Sheet.Name & "'!R[2]C"

代码说明

  • ""Sample: "":在VBA中用两个双引号表示Excel公式里的一个双引号,对应公式中的"Sample: "
  • '" & Consol_Sheet.Name & "'!:将工作表名用单引号包裹(因为表名含空格),通过VBA字符串拼接把变量值插入到公式中,对应公式里的'Test 1 - 520 psf'!
  • R[2]C:R1C1格式的引用,对应当前单元格所在列向下2行的单元格(比如B3对应的就是B5)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.23 03:58:12