我正在尝试获取一段代码,当第8列中的单元格发生更改时,它会删除其旁边的单元格值(第9列)。 嗯......这是简单的版本
第8列和第9列都是下拉列表,第9列中的下拉列表依赖于第8列。在第9列中,需要多个答案,所以我在互联网上找到了一个可以实现这一目标的代码,但现在是当我更改第8列中的值时,第9列不会自动删除。 下面的这段代码可以工作,但只有当我在当时更改1个单元格(在第8列中)时。当我在第8列中粘贴多个单元格或在第8列中选择单元格然后将其向下拖动(从右下角)时,它不起作用。
我没有很多编码经验,似乎无法为此找到合适的解决方案。 感谢QHarr,我得到了更多。 这是我的第二次尝试:
@media screen and (min-width:360px)
第一次尝试:
Dim ClearC9 As String
Dim i As Long
For i = 2 To 1000
If Target.Cells.Count > 1 Then GoTo ClearC9
If Not Intersect(Target, Range("H" & i)) Is Nothing Then
Range("I" & i).ClearContents
End If
Next i
exitHandler:
Application.EnableEvents = True
Columns("I:I").EntireColumn.AutoFit
ClearC9:
Selection.Offset(, 1).ClearContents
这是整个代码:
Dim i As Long
For i = 2 To 1000
If Target.Cells.Count > 1 Then Exit Sub
If Not Intersect(Target, Range("H" & i)) Is Nothing Then
Range("I" & i).ClearContents
End If
答案 0 :(得分:0)
创建交叉范围的一般模式:
Nothing
则不执行任何操作例如:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rngDV As Range, TheIntersection As Range, r As Range
' stuff
TheIntersection = Intersect(Target, rngDV)
If TheIntersection Is Nothing Then
' do nothing
Else
For Each r In TheIntersection
' do something
Next r
End If
End Sub