VBA公式中如何用变量表示工作表名称和单元格名称
ActiveCell.FormulaR1C1=_"=SUMPRODUCT(('3Data'!R2C1:R579C1=""02Incoming"")*('3Data'!R2...
ActiveCell.FormulaR1C1 = _
"=SUMPRODUCT(('3Data'!R2C1:R579C1=""02Incoming"")*('3Data'!R2C9:R579C9=RC3)*('3Data'!R2C2:R579C2))"
想用变量M代替工作表3Data中的3,用变量DRow代替R579中的579,写成这样:
ActiveCell.FormulaR1C1 = _
"=SUMPRODUCT(('“&M&”Data'!R2C1:R"&DRow&"C1=""02Incoming"")*('“&M&”Data'!R2C9:R"&DRow&"C9=RC3)*('“&M&”Data'!R2C2:R"&DRow&"C2))"
却总是不行,指着第三个引号那里提示:缺少:语句结束。
请高手指点! 展开
"=SUMPRODUCT(('3Data'!R2C1:R579C1=""02Incoming"")*('3Data'!R2C9:R579C9=RC3)*('3Data'!R2C2:R579C2))"
想用变量M代替工作表3Data中的3,用变量DRow代替R579中的579,写成这样:
ActiveCell.FormulaR1C1 = _
"=SUMPRODUCT(('“&M&”Data'!R2C1:R"&DRow&"C1=""02Incoming"")*('“&M&”Data'!R2C9:R"&DRow&"C9=RC3)*('“&M&”Data'!R2C2:R"&DRow&"C2))"
却总是不行,指着第三个引号那里提示:缺少:语句结束。
请高手指点! 展开
3个回答
展开全部
主要问题是连接符 & 与变量间没有空格。另外双引旅皮号有的是中文引号。拆拆差下面改御哪好了
ActiveCell.FormulaR1C1 = "=SUMPRODUCT(('" & M & "Data'!R2C1:R" & DRow & "C1=""02Incoming"")*('" & M & "Data'!R2C9:R" & DRow & "C9=RC3)*('" & M & "Data'!R2C2:R" & DRow & "C2))"
ActiveCell.FormulaR1C1 = "=SUMPRODUCT(('" & M & "Data'!R2C1:R" & DRow & "C1=""02Incoming"")*('" & M & "Data'!R2C9:R" & DRow & "C9=RC3)*('" & M & "Data'!R2C2:R" & DRow & "C2))"
推荐于2017-12-16 · 知道合伙人软件行家
关注
展开全部
你把excel表格里面的公式写出来。
你这个用R1C1表示法里面看不出来'3Data'!R2C9:R579C9=RC3 里面的RC3表答友示哪一个单元格。是没法帮你改判举宏的。
而且这种表示法你用来携程VBA谁能一目了然的看明白?
用ActiveCell.Formula方法表示就好,掘册又简单,也能看明白。后续修改也简单易行。
你这个用R1C1表示法里面看不出来'3Data'!R2C9:R579C9=RC3 里面的RC3表答友示哪一个单元格。是没法帮你改判举宏的。
而且这种表示法你用来携程VBA谁能一目了然的看明白?
用ActiveCell.Formula方法表示就好,掘册又简单,也能看明白。后续修改也简单易行。
追问
主要是初学,基本上用录制,函数公式也更熟些:)
谢谢你的讨论和建议!
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
&的前后各加一个空格试一下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询