首页 > 解决方案 > EXCEL VBA Countifs 公式使用变量调用工作表名称我从中提取数据

问题描述

所以,我作为一个相对初学者编写了这段代码(这里有很多帮助。)。我拿一张每周工作表并将其作为新工作表导入。然后我编译该工作表上的数据以最终绘制所有内容。

我现在正在重写代码以使用汇总数据选项卡上的单个主数据表从最新的工作表中提取数据。我想将我的 VBA 中的公式插入到主表中的单元格中。我想在公式中使用已分配最新工作表名称的变量,以便我可以为添加的每个新行使用相同的 VBA 脚本,以便将新工作表名称传递给变量而不是扩展行笨拙的代码。

我了解在 VBA 中与直接在 Excel 中编写公式之间的区别,因此,我希望这是我造成的语法错误。我也理解引号意味着“写为文本”,但我不知道如何删除引号,以便插入公式,但仍将工作表名称放入公式中,而不是工作表名称存储在的变量中:见下文:

'Add all formulas across for AT department to pull the appropriate data from the new tab to the master table. 
.Range("F" & DstLstRw3).Formula = "=IFERROR(COUNTIFS([wsDst1]C[-4],""AT"",[wsDst1]C,1),0)" 
.Range("G" & DstLstRw3).Formula = "=IFERROR(COUNTIFS(wsDst1!C[-5],""AT"",wsDst1!C,0),0)" .Range("H" & DstLstRw3).Formula = "=IFERROR(((RC[-2]+RC[-1])-RC[-1])/(RC[-2]+RC[-1]),0)"

当 VBA 将公式插入单元格时,而不是插入工作表名称,它实际上是在存储工作表名称的位置插入文本变量名称。尽管有引号,如何让工作表名称代替变量名称传递到公式中?

标签: excelvbaformula

解决方案


推荐阅读