将IF语句添加到组合框链接的单元格Excel

时间:2018-05-31 14:11:26

标签: excel vba combobox

我有一个链接到我的ComboBox的单元格,它显示了ComboBox的下拉值。

在另一个单元格中,我有基于某些情况更换数字的IF语句,例如:=IF(E38=0,C37,E37)

我尝试将一个IF语句放在ComboBox值出现的位置,但是,正如您猜测的那样,当我运行宏并且ComboBox必须显示一个新值时,公式将被删除。

我使用的公式是:=IF(E38=0,"ComboBox Value",E37)  其中ComboBox Value是下拉列表中当前的名称。 这没有用。我知道它也不会在LinkedCell属性中工作。

有没有办法使用VBA或公式或条件格式或其他东西来合并它?

提前致谢。 Regular Case

enter image description here

3 个答案:

答案 0 :(得分:1)

您是否尝试= INDEX("输入范围","手机链接")来获取" ComboBox值"?

答案 1 :(得分:1)

  1. 首先将combox链接到一个单元格,比如说C1
  2. 说,你必须根据你给定的条件更新范围(“C2”)。
  3. Sub ComboIf()

    如果范围(“E38”)。值= 0则     范围(“C2”)。值=范围(“C1”)     否则:范围(“C2”)。值=范围(“E37”) 结束如果

    End Sub

  4. 现在首先从组合框中选择一个值,它将更新单元格C1,然后运行宏,它将更新C2-如果为0,则更新您选择的当前组合值,其中包含E37中的任何值。

答案 2 :(得分:1)

我认为这个小型演示将指向正确的方向。当comboBox中的值更改时,它将更改您选择的单元格中的值。忽略debug.print语句,可能想要使用更改事件而不是click事件。

Private Sub ComboBox1_Click()
    Debug.Print ("CHANGED")
End Sub

Private Sub ComboBox1_Change()
    Debug.Print ("CHANGED2")
    ActiveSheet.Cells(1, 1) = ComboBox1.Value
End Sub