我有一个命名的comboBox,我们称之为:“comboBox1”
我想从单元格引用comboBox1的值。
=if(comboBox1.Value=1,1,0)
上面的想法是我正在寻找的。我知道我可以将一个偶数附加到comboBox1,它填充一个单元格,可以被其他单元格读取,但这只会引入更多移动部件和复杂性。
这必须是可能的,对吧?任何帮助都会很棒,谢谢!
答案 0 :(得分:1)
我认为这样的事情是可能的。
对于组合框更改事件,您需要触发重新计算:
Private Sub ComboBox1_Change()
Application.Calculate
End Sub
接下来,您需要添加自定义用户定义的功能。这个Application.Volatile行的重要部分。这将确保在任何计算后重新计算。
Function GetComboVal(cmbName As String) As String
Application.Volatile 'will always recalculate
Dim cmb As OLEObject
Set cmb = Sheet1.OLEObjects(cmbName)
GetComboVal = cmb.Object.Value
End Function
所以在你的单元格中,你需要使用这样的调用:
=if(GetComboVal("ComboBox1")=1,1,0)
此技术的缺点是,如果您的工作表有很多计算,则可能需要一段时间才能重新计算。
答案 1 :(得分:1)
下午好,
将单元格链接到组合框有一种更简单的方法。使用ComboBox的属性,ListFillRange上面是Linked Cell。您只需将此单元格指定为您希望组合框值相等的任何单元格。
答案 2 :(得分:0)
Excel允许ActiveX和表单doropdown(组合)上的单元格链接。这会将值写入一个没有任何代码的单元格。