[英]Excel VBA - Convert a string Formula to an Excel Calculation in a range of cells
我只是想知道是否可以不进行循环-在我的excel工作表中,例如Range("A1:C10")
我有文本连接公式,一旦连接,就可以创建真正的Excel函数。
作为一个愚蠢的示例,假设我在单元格A1中具有以下内容:
A1: ="=Sum(D"&C2&":E"&C3&")"
现在,我知道在VBA中,可以对任何一个特定的单元格执行以下操作:
Range("A1").Formula = Range("A1").Text
它将把我的文本公式转换为Excel公式并进行评估。
现在,我很好奇的是,是否有一种说法,例如:
Range("A1:C10").Formula = Range("A1:C10").Text
是否没有单独遍历每个单元?
另外,我不能使用INDIRECT()
因为不幸的是,我的公式引用的是封闭的工作簿:/
有任何想法吗??
Range.Text
包含单元格值的字符串表示形式。 实际的计算值(我怀疑这是您想要的)是使用Range.Value
访问的-尝试以下操作:
Range("A1:C10").Formula = Range("A1:C10").Value
不知道这是否是您要尝试的操作,但是例如,如果您使用:
Range("A1:C10").Formula = "=Sum(D1:E1)"
然后相对参考会自动调整:
A1: =Sum(D1:E1)
A2: =Sum(D2:E2)
B1: =Sum(E1:F1)
... etc.
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.