我只是想知道如果没有循环可以做到这一点 - 在我的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()
,不幸的是,我的公式是指封闭的工作簿:/
任何想法??
答案 0 :(得分:1)
Range.Text
包含单元格值的字符串表示形式。使用Range.Value
访问实际计算值(我怀疑是您之后的事情) - 试试这个:
Range("A1:C10").Formula = Range("A1:C10").Value
答案 1 :(得分:0)
不确定这是否是您要做的,但例如,如果您使用:
Range("A1:C10").Formula = "=Sum(D1:E1)"
然后相对引用将自动调整:
A1: =Sum(D1:E1)
A2: =Sum(D2:E2)
B1: =Sum(E1:F1)
... etc.