我想在Excel文件中执行相同的操作。我想把“x”放在一个单元格中,然后用其计算其他单元格。
有没有办法在Excel中添加“未知变量”?我不希望它解决任何问题,但我需要具有以下值:0.06 * x + 66000
修改
例如,如果D2 = x且E3 = 2,如果我在单元格中输入“= D2-E3”,我想要“x-2”。
修改
必须评估“x”,而不仅仅是连接。它必须简化下一个等式,如屏幕截图所示。例如,如果您有:A1: x-2
和A2: 3
,如果您执行:A3: =A1*A2
,则应该:3x-6
。
答案 0 :(得分:2)
这是用户定义的功能。
代码......
Public Function MakeEqn(inputStr As String) As String
Dim tempStr As String
Dim rngStr As String
Dim myRng As Range
Dim iLoop As Long, jLoop As Long
Application.Volatile
tempStr = ""
Set myRng = Nothing
iLoop = 1
Do While iLoop + 1 <= Len(inputStr)
On Error Resume Next
For jLoop = 2 To 4
rngStr = Mid(inputStr, iLoop, jLoop)
Set myRng = Range(rngStr)
If Not myRng Is Nothing Then Exit For
Next jLoop
On Error GoTo 0
If myRng Is Nothing Then
tempStr = tempStr & Mid(inputStr, iLoop, 1)
Else
tempStr = tempStr & myRng.Value
Set myRng = Nothing
iLoop = iLoop + jLoop - 1
End If
iLoop = iLoop + 1
Loop
MakeEqn = tempStr
Set myRng = Nothing
End Function
答案 1 :(得分:1)
为你编辑案例,比如说E4放置这个公式
=D2&"-"E3
写出你的公式,并将它与你将用单元格值改变的部分连接起来(&amp;)。单元格值可以是数字或文本(即X),以满足您的需求。
以下是两行完成的基本方程式的示例。
在第一种方法中,我只是重新编写了等式,将数学运算符和变量x保持为文本,并将常量M和B替换为它们的单元格值。
=D4&"*x+"&D3
另一种方法是将单元格值替换为文本,这是我在F到H列中所做的。我在G6中使用了以下公式:
=SUBSTITUTE(SUBSTITUTE(G2,G3,H3),G4,H4)
使用替代方法并非没有一些潜在的陷阱。您需要在较短的变量之前替换较长的变量。 IE浏览器。你需要在替换A之前更换Ay。如果你在公式Ay + A中首先用9代替A,那么你最终会得到9y + 9,这不是你想要的。
如果你需要首先计算一些值,如F9区域的第三个例子中所示,请注意单元格G14的等式如何与一些数学计算以及一些保持不变的字符串值混合。
=(B11-B10)/(C11-C10)&"*x+"&C10-(B11-B10)/(C11-C10)*B10
在G14中,我们现在只有x的公式。假设我们知道X在这个阶段是什么,我们想要解决Y.让X在G15中,将其值在H15中,并在G16中执行以下操作:
=SUBSTITUTE(G14,G15,H15)
这将取代X值替换并看到数字的公式。选择单元格G17以使其成为活动单元格,然后转到“公式”功能区并选择“定义名称”。
将公式名称放在顶部,我使用“回答”,然后在底部输入以下内容
=evaluate(G16)
然后在单元格G17中使用新定义的名称,所以在我的情况下我使用了:
=answer
答案的作用是评估我输入的位置上方的单元格。我可以在这张表格的任何地方使用“回答”来评估紧靠其上方的单元格。