如何使用VBA删除集合模板上的行?

时间:2019-06-25 09:59:26

标签: excel vba

VBA新手。

我有一个简单的excel模板,可从源文件生成汇总数据。换句话说,我单击一个按钮,然后在其中一个选项卡上的模板上刷新数字。

但是,在此模板上,我不再需要一行。我想将其完全删除,但不能删除它。假设这是“已售商品成本”(请参见代码),我不再需要它。现在,附加到COGS的数字为0,因为我的源文件不再具有此信息。

这里的全部代码都是针对“已售商品成本”这一行的,我对此并不完全了解...同样,只想删除不再相关的内容。

请告知我该怎么做。非常感谢。

If Range("B" & t) = "Cost of goods sold" Then
    Range("B" & t, "G" & t).Select
    Selection.Copy
    Sheets("Summary").Select
    Range("A" & (rowXListTotal - z + d)).Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    d = d + 1
    Worksheets("SP").Select
End If

1 个答案:

答案 0 :(得分:0)

有关如何处理的简单示例:

Option Explicit

Sub test()

    Dim LastRow As Long, i As Long

    With ThisWorkbook.Worksheets("Sheet1")

        'Find the last row of column A
        LastRow = .Cells(.Rows.Count, "A").End(xlUp).Row

        'Loop aiming to delete. Start from bottom to top using Step -1
        For i = LastRow To 1 Step -1

            'If condition made, then delete
            If .Range("B" & i).Value = "DeleteMe" Then
                .Rows(i).EntireRow.Delete
            End If

        Next i

    End With

End Sub