Excel和在两个下拉列表之间更改值



我有两个下拉列表——一个依赖于另一个——这意味着如果我从A1中的列表中选择了一个特定值,那么A2中就会出现一个特定列表。这很好用。但是,当我更改A1中的值时,A2将保留在单元格中,直到我单击列表为止——然后我在A2中的值将根据我的选择而更改。

例如,如果列表1为[是,否],列表为是:[1,2,3]否:[4,5,6]。首先,我为A1选择"是",然后为A2选择2。然后,如果我为A1选择"否","2"将保持在A2中,直到我实际单击A2选择一个新值(4,5,6)。一旦我更改了A1选项,有什么方法可以"清除"A2吗?

谢谢!

将其放入工作表的VBA代码中:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
    If Target.Address = Range("A1").Address Then
        Dim dependentCell As Range
        Set dependentCell = Target.Offset(1, 0)     'Cell A2
        If dependentCell.Validation.Value = False Then dependentCell.Clear
    End If        
End Sub

将此代码放入Worksheet:的代码页中

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = Range("A1").Address Then
        Range("A2").ClearContents
    End If
End Sub

您可以在工作表的worksheet_change过程中插入用于刷新A2列表的代码。每次更改该工作表中的单元格值时,都会运行更新代码。

最新更新