文本粘贴后计算公式

时间:2016-12-08 15:05:19

标签: excel vba excel-vba macros

我有一个公式,在从用户的日期输入中绘制文件路径时构造一个vlookup函数,接下来我有一个宏,它接受这个公式的结果并将它们粘贴到Cell C6中。

=("=" & "IF(ISNA(VLOOKUP($A6," & "'I:\CM\PC\A\TR\AT\"&TEXT(C$5,"yyyy")&"\"&TEXT(C$5,"mmmmmmmmmmm")&"\["&TEXT(C$5,"mmm")&TEXT(C$5,"d")&".xlsm]Violations Count'!$A:$B"&",2,FALSE)),"""",VLOOKUP($A6,"&"'I:\CM\PC\A\TR\AT\"&TEXT(C$5,"yyyy")&"\"&TEXT(C$5,"mmmmmmmmmmm")&"\["&TEXT(C$5,"mmm")&TEXT(C$5,"d")&".xlsm]Violations Count'!$A:$B"&",2,FALSE))")

我遇到的麻烦是找到一种让VBA激活公式的方法,而不是让它以文本格式放在那里:

=IF(ISNA(VLOOKUP($A6,'I:\CM\PC\A\TR\AT\2016\December\[Dec5.xlsm]Violations Count'!$A:$B,2,FALSE)),"",VLOOKUP($A6,'I:\CM\PC\A\TR\AT\2016\December\[Dec5.xlsm]Violations Count'!$A:$B,2,FALSE))

之后我只有一个宏自动填充它以获取A6列之间的其他名称:A37。

如果有人可以帮助我使用VBA激活细胞,我们将不胜感激。

2 个答案:

答案 0 :(得分:0)

Look this up。评估功能可能是您正在寻找的。使用它的最简单方法是将表达式包装在方括号[]。

答案 1 :(得分:0)

如果要获取单元格的值(可能包含文本字符串),请使用以下内容:

someVariableEtc = Range("A1").Value

如果要使用VBA设置Cell的公式,可以使用以下内容:

Range("C6").Formula = "some text string"

结合这两者,你可以想出类似的东西:

Range("C6").Formula = Range("A1").Value