首页 > 解决方案 > 单元格值更改时更新下拉菜单 (Excel)

问题描述

我的下拉菜单有问题。下拉菜单 (B5) 具有四个值 ( J1:J4) 的范围,这些值取决于下拉菜单 (B3) 上方单元格中的值。当 B3 低于某个值时,范围内的值会变为FALSE(该部分是故意的,并使用简单的 if 函数完成),这会显示在下拉菜单中,这意味着您可以选择值FALSE。但是,当您首先在下拉菜单中选择一个值,然后更改 B3 中的值,例如,减小该值以使范围值变为 时FALSE,下拉菜单中显示的值不会更新,而范围内的值变化得很好。

每次 B3 中的值发生变化时,有没有办法“强制”更新下拉菜单?

标签: excelvba

解决方案


只需添加一个工作表事件即可捕获单元格中的更改B3并清除其值。

Private Sub Worksheet_Change(ByVal Target As Range)

 If Target.Address = "$B$3" Then 
 Range("B5").ClearContents 
 End If 

End Sub

推荐阅读