我希望创建一个VBA代码,根据D列中任何单元格的更改,清除所有下一行值,但保留公式
例如:
如果我更改了D3,我希望范围A4:J 100只清除值,但保留公式,如果我更改了D4,范围将是A5:J 100
我找到了一些代码,部分地满足了y的要求,但我无法将它们组合在一起。
此代码用于清除值,但保留公式。
Sub RemoveConstants()
Dim rConstants As Range
Set rConstants = Sheet1.Range("A1:B2").SpecialCells(xlCellTypeConstants)
rConstants.ClearContents
End Sub
以及基于删除同一行上的单元格(并删除公式)的删除单元格的代码。
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("L:L")) Is Nothing Then
Range("M" & Target.Row).ClearContents
End If
End Sub
有什么想法吗?
发布于 2020-03-20 04:29:30
尝尝这个。
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub 'do nothing if multiple cells changed
If Not Intersect(Target, Range("D:D")) Is Nothing Then
Application.EnableEvents = False 'prevent an endless loop of this code
Range("A" & Target.Row + 1 & ":J100").SpecialCells(xlCellTypeConstants).ClearContents
Application.EnableEvents = True
End If
End Sub
https://stackoverflow.com/questions/60774093
复制相似问题