VBA根据标准删除工作表

问题描述 投票:-1回答:1

我想在VBA上创建一个宏,如果特定值小于另一个工作表中的另一个,则应该完全删除工作表。

所以我得到了sheet1,例如,在范围“A1”中有一个日期。现在我希望所有其他表(实际上只是其中一些,但我也可以接受所有其他表,如果没有解决方案)比较一个值,例如在单元格“B10”中,包含一个公式as输出有一个日期。如果从比较中,该值位于sheet1中的日期之后那么您必须删除该表。

谢谢。

excel vba condition delete-file worksheet
1个回答
0
投票

你需要这样的东西......只需逐步浏览工作簿中的所有工作表(向后,因为你要删除工作表)并测试Sheet(1),或者你的主要工作表在哪里......你没有提供足够的细节,但是你需要指定你的测试哪个工作表或者这个工作不起作用。

Sub Test()

Application.DisplayAlerts = False

For i = ActiveWorkbook.Worksheets.Count To 2 Step -1
    If Sheets(i).Range("B10").Value < Sheets(1).Range("A1").Value Then
        Sheets(i).Delete
    End If
Next i

Application.DisplayAlerts = True

End Sub
© www.soinside.com 2019 - 2024. All rights reserved.