首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >根据单元格中的更改清除单元格值并为所有下一行保留公式

根据单元格中的更改清除单元格值并为所有下一行保留公式
EN

Stack Overflow用户
提问于 2020-03-20 12:23:17
回答 1查看 25关注 0票数 0

我希望创建一个VBA代码,根据D列中任何单元格的更改,清除所有下一行值,但保留公式

例如:

如果我更改了D3,我希望范围A4:J 100只清除值,但保留公式,如果我更改了D4,范围将是A5:J 100

我找到了一些代码,部分地满足了y的要求,但我无法将它们组合在一起。

此代码用于清除值,但保留公式。

代码语言:javascript
代码运行次数:0
运行
复制
Sub RemoveConstants()

    Dim rConstants As Range

    Set rConstants = Sheet1.Range("A1:B2").SpecialCells(xlCellTypeConstants)
    rConstants.ClearContents

End Sub

以及基于删除同一行上的单元格(并删除公式)的删除单元格的代码。

代码语言:javascript
代码运行次数:0
运行
复制
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

有什么想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-03-20 12:29:30

尝尝这个。

代码语言:javascript
代码运行次数:0
运行
复制
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
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60774093

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档