[英]Clear cell content for the entire column in table, based on a specific value
我只需要清除启用宏的 excel 文件的 D 列(整个 D 列)中的单元格中的内容,
其中单元格值 = 999。
我只为一个单元格(例如 D3)尝试了 VBA 代码,它有效:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
If Range("D3") = 999 Then
Range("D3").ClearContents
End If
End Sub
但我需要它在整个 D 列中工作,对于在 excel 表中创建的任何新行
尝试了另一个 VBA,但收到错误消息:“Object 全局的方法范围失败”
我确定我的代码中存在错误或缺少某些内容:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim myRange As Range
If Range("myRange").Columns(4).Value = 999 Then
Range("myRange").Columns(4).ClearContents
End If
End Sub
如果要清除所有列(工作表的,而不是 Table/ListObject 的),请使用下一个改编代码:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
If Worksheets("mySheet").Range("D3") = 999 Then
Range("D3").EntireColumn.ClearContents
End If
End Sub
请在存在范围的地方使用您的真实工作表名称而不是“mySheet”。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.