excel 将文本粘贴为公式

smtd7mpg  于 2023-01-18  发布在  其他
关注(0)|答案(4)|浏览(239)

我正在创建一个字符串,它是一个公式。就像在这里(这是一个更简单的例子)
如果:

A1 is "Sum"
A2 is "D3"

那么B1就是=Concatenate("=",A1,"(",A2,")")
我想要一个VBA宏,它接受B1中公式的结果,并将作为公式粘贴到C1中。
我需要C1等于公式=SUM(D3)
我认为这涉及到特殊锡膏和评估,但我不知道如何。
我不想使用INDIRECT函数,因为我希望能够填充更多的单元格使用比公式和内部的相对引用。

0yg35tkg

0yg35tkg1#

with Activesheet
  .Range("C1").Formula = .Range("B1").Value
End With
vwkv1x7d

vwkv1x7d2#

我不知道你是否明确地想要一个命令宏,但是这个东西看起来是VBA UDF的一个很好的用途。

Function EvalFormula(f As String) As Variant
    EvalFormula = Application.Evaluate(f)
End Function

然后在C1中,您可以调用:

=EvalFormula(B1)

将其编写为UDF将消除那些令人不快的情况,即您忘记运行宏,现在您的工作表完全不正常。

voj3qocg

voj3qocg3#

我使用ActiveSheet.Cells(5, 3).Formula = ActiveSheet.Cells(5, 3).Value将文本值用作公式

ifmq2ha2

ifmq2ha24#

ActiveSheet.Cells(2, 2).Value = ActiveSheet.Cells(1, 2).Value

我想你可以从这里开始工作:-)

相关问题