如果带有文本框的单元格的函数值

Posted

技术标签:

【中文标题】如果带有文本框的单元格的函数值【英文标题】:If function value for cell with text boxes 【发布时间】:2020-06-28 13:04:05 【问题描述】:

我这里有两个文本框。第一个值为 1 到 10,第二个值为 1 到 2。根据文本框中的值组合,我想要单元格 e。 G。 E6 从另一张纸上取某个值。我已尝试逐步解决此问题,但找不到有用的解决方案。

文本框:

来自另一张纸的可能值组合:

例如

TextBox1 值 = 1 和 TextBox2 值 = 1 -> 单元格 E6 = 3,25

TextBox1 值 = 2 和 TextBox2 值 = 2 -> 单元格 E6 = 13

TextBox1 值 = 3 和 TextBox2 值 = 2 -> 单元格 E6 = 19,50 等等

到目前为止还没有奏效的基本想法:

Sub Test()
    
    If TextBox1.Value = ("1") And TextBox2.Value = ("1") Then
    Range("E6").Value = 3.25
    End If
    
    
End Sub

也许有人对此有更好的解决方案,而不是 if 函数。

【问题讨论】:

【参考方案1】:

请尝试下一个方法:

If Me.TextBox1.Value = 1 And Me.TextBox2.Value = 1 Then
    Range("E6").Value = 3.25
End If

它将改变**活动工作表“”的范围值...

【讨论】:

如果其他值的函数没有问题,我可以添加 10+ 个吗?还是使用 s 参考会更好? @Qncy:为什么不呢?但是你能确认上面的代码有效吗? 它有效。但是,它不会自动更新,只有当我按 F5 时。是否可以在我更改数字后立即调整值? @Qncy:是的。请使用文本框Change 事件...尝试以合乎逻辑的方式使用If ... ElseIf ... Else ... End If...【参考方案2】:

Qncy,

如果您愿意按如下方式更改数据表格式:

那么你就可以使用这个功能来填写你的答案了:

Option Explicit

Function GetValue() As Double

'Function Call: =GetValue() in the cell where you want the answer.

  Dim rng As Range
  
  Application.Volatile
  
  Set rng = Application.Caller()
  
  GetValue = Sheets("Data").Range("$A$2").Offset(rng.Offset(0, -2), rng.Offset(0, -1))
  
End Function

当然,您可以将文本框值替换为我上面的 .Offset(rng.Offset(0, -2), rng.Offset(0, -1) 以及工作表名称,例如“数据”

我使用C列中的函数填写了这张表:

HTH

好的,这是一个带有文本框的示例。我已使用 LinkedCell 属性将值链接到文本框后面的单元格中,以使引用更容易。

Option Explicit

Function GetValue() As Double

  Dim rng As Range
  Dim wks As Worksheet
  
  Application.Volatile
  
  Set rng = Application.Caller()
  Set wks = Sheets("Boxes")
  
  GetValue = Sheets("Data").Range("$A$2").Offset(wks.Cells(1, 1), wks.Cells(1, 2))
  
End Function 'GetValue()

工作簿设置:

这是link so you can download the test file,看看情况如何:

【讨论】:

谢谢。我会尽快尝试。但我需要 2 个文本框,因为我模拟了一种换档,输出值应该是单元格中根据档位变化的速度。我希望我能很好地描述它。 @RetiredGeek 我应该明确添加这个:GetValue = Sheets("Data").Range("$A$2").Offset(Me.Textbox1.Value, Me.Textbox2.Value) 非常感谢,但我没有得到这一项工作。对不起。

以上是关于如果带有文本框的单元格的函数值的主要内容,如果未能解决你的问题,请参考以下文章

获取 JQuery 数据表单元格内锚标记的文本值

EXCEL中的CELL函数怎么用

为 NSTableView 单元格绘制带有边框和背景的文本

根据 JSON 文件中的内容文本调整带有 UILabel 的自定义单元格的大小

iOS - 带有自定义单元格的可点击 UITableView

确保遵守表格单元格的宽度