excel - 根据单元格的值删除一行

标签 excel vba

现在,我只有 a 列中列出的零件编号列表,并且在我经常使用的一个宏中,零件被添加到其中或从中删除。

这是我现在用来删除零件号的子:

Sub DeleteIfVal(rng As Range, val)
    Dim c As Range, del As Range
    For Each c In rng.Cells
        If c.Value = val Then
            If del Is Nothing Then
                Set del = c
            Else
                Set del = Application.Union(del, c)
            End If
        End If
    Next c
    If Not del Is Nothing Then del.Delete
End Sub

现在我希望列表包含有关部件的其他信息(部件名称、位置等),但我现在拥有的子只删除单元格而不是仅基于第一列中的单元格的整行

最佳答案

通过“Range.EntireRow”获取行本身(而不是其值),然后将其删除。
换句话说,不要使用“del.Delete”,而是使用:

del.EntireRow.Delete

关于excel - 根据单元格的值删除一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24830595/

相关文章:

vba - 自动排序和格式化以及 Excel

vba - 是否可以在 .MoveEndUntil 中使用 ASCII 代码?

excel - 在 excel vba 中使用 VLC player activex 作为免注册 COM

java - 如何使用java查找xlsx中的空白单元格

vba - excel:高级过滤器中运行时错误 1004

excel - 在另一张纸上打印,为什么它不起作用?

Excel公式中的单元格地址

Excel 日期时间从 YYYYMMDDHHMMSS 转换为 DD/MM/YYYY HH :MM:SS

vba - VBA CreateProcess将StdIn和StdOut重定向到Socket吗?

excel - 在 MS Access 中使用 Excel VBA 进行 SQL 删除