我试图使用sumifs
基于检查'details sheet
'中的其他两列匹配其中的值来在不同工作簿中生成名为'Details Sheet
'的工作表中特定列的总和当前工作表。 现在我有以下在sumifs公式中使用工作簿名称
ThisWB = ActiveWorkbook.Name
在宏的开始。
在宏后来我焦点切换到片/工作簿,我的工作出来,并使用:
Dim sheet As String
sheet = "'[" & ThisWB & "]Details Sheet'!"
Range("F3").Select
ActiveCell.FormulaR1C1 = _
"=SUMIFS(INDIRECT(sheet & ""$H:$H"")),INDIRECT(sheet & ""$D:$D"")),""=""&$B3,INDIRECT(sheet & ""$E:$E"")),""=""&$C3)"
这产生一个错误。我曾尝试过其他各种方式来引用该工作表,但他们都没有工作。
当我使用工作簿的全名(即[workbook1]Details Sheet!'$D:$D
)参考工作表时,确实有效。
我在这里错过了什么?
为什么你需要在那里间接? – Rory 2015-03-25 12:33:10
我已尝试没有间接也,但没有奏效。间接允许我使用文本创建引用,这似乎是逻辑使用 – Bobert3 2015-03-25 12:34:09
请检查:[当某人回答我的问题时该怎么办?](http://stackoverflow.com/help/someone-answers) 。 – 2015-04-25 04:13:03