gpt4 book ai didi

vba - Excel vba 如果单元格包含文本,则删除一行

转载 作者:行者123 更新时间:2023-12-04 21:12:55 25 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Delete Row based on Search Key VBA

(3 个回答)



How to reverse a For loop

(3 个回答)


8年前关闭。




我正在使用这段代码:

Dim r As Integer   
For r = 1 To Sheet1.UsedRange.Rows.Count
If Cells(r, "Q") = "0" Then
Sheet1.Rows(r).EntireRow.Delete
End If
Next

问题是它并没有删除所有内容,它只是删除了一些行,我必须多次按下使用此代码的按钮才能删除“Q”中“0”的所有实例

类似问题的答案

How to reverse a For loop
Delete Row based on Search Key VBA

最佳答案

我很欣赏这已在评论中得到解决,但为了完整起见,您需要颠倒 for/next 循环的顺序,如下所示:

Dim r As Integer   
For r = Sheet1.UsedRange.Rows.Count to 1 step -1
If Cells(r, "Q") = "0" Then
Sheet1.Rows(r).EntireRow.Delete
End If
Next

与之前的方式一样,通过删除列表开头的一整行,您将所有内容向上移动一行。通过自下而上开始,删除整行不会影响您尚未处理的项目的行数。

很高兴你把事情解决了。

关于vba - Excel vba 如果单元格包含文本,则删除一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21515073/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com