excel明确依赖下拉列表vba

时间:2013-10-11 14:43:14

标签: excel vba drop-down-menu refresh

毕竟,我已经有了下拉列表,依赖项等,并且它运行良好,我也有一个vba代码,当用户从下拉列表父项更改一个值时,依赖项清除其内容。 BUT

只适用于那个单元格......

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Cells.Count > 1 Then Exit Sub

If Not Intersect(Target, Range("C2")) Is Nothing Then
    Range("D2").ClearContents
End If
End Sub

很明显,因为我告诉vba只有C2& D2,但我想要的是有人会帮助弄清楚如何使它成为整个列,而不仅仅是那个特定的单元格,如(第1列)或者某些东西......因为如果我复制粘贴那些下拉列表只适用于指定的第一个原因......

任何人?有任何想法吗?请。

这里有一些照片 enter image description here

enter image description here

在上面的图片中,下拉列表仅在该特定单元格中工作,我尝试使用函数Cells(行索引,columnIndex)告诉我,但我需要一个for或类似的东西不是吗?这是我在vba中做的第一件事,所以我没有线索,我正在寻找例子然后尝试,这需要太长时间哈哈哈, 我已经尝试过而不是“C2”,列(3)和D2列(4)但我在条件If Not Intersect(Target, Range(Column(3))) Is Nothing Then中有错误

1 个答案:

答案 0 :(得分:3)

据我所知,您希望宏成对工作:C列中的任何更改(从第2行底部方向开始)将清除同一行中D列中的单元格。如果是这样,以下代码可以解决问题。

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Cells.Count > 1 Then Exit Sub

If Target.Column = 3 Then
    Target.Offset(0, 1).ClearContents
End If
End Sub