我可以在用户表单中基于用户输入的公式创建方程式吗?

时间:2019-04-14 15:37:23

标签: excel vba userform

我正在Excel中创建一个用户表单,用户需要首先输入我事先编写的计算所必需的参数。但是,将进行特定于用户的计算。计算将需要与用户输入的参数相同的参数,因此我只能使用文本框名称作为参考,但似乎无法想到可以识别输入的公式就是它将使用的方程式的代码。

我的最终用户尽可能广泛,我正在创建一个Excel文件,该文件尽可能通用。绝大多数计算对于所有用户都是通用的,因此我可以在使用它们之前对其进行编码。

因为我还不知道如何创建代码来解决我的问题,所以我还没有尝试过任何东西。

1 个答案:

答案 0 :(得分:0)

  1. 将公式作为String
  2. 插入前导“ =”
  3. 根据需要更改参数
  4. Evaluate()公式并使用结果,或者
  5. 将公式放在单元格中

    Sub UserSuppliedEquation()
    Dim v As Variant, sForm As String
    
    sForm = Application.InputBox(Prompt:="Enter Formula without leading equal sign", Type:=2)
    sForm = "=" & sForm
    
    v = Evaluate(sForm)
    MsgBox v & vbCrLf & sForm
    Range("B9").Formula = sForm
    End Sub
    



enter image description here