VBA-删除表单1中的整个行
我一直在使用以下来删除一行。
Rows([2]).EntireRow.Delete
但是,当时我的工作手册只有一张。 sheet2中添加了一个命令button,用于调用sheet1中存在的macros。
我应该如何修改我的上面的代码,以便VBA删除sheet1的第二行?
除了指定行之外,您只需要指定行所在的表格。 即
Worksheets("Sheet1").Rows(2).EntireRow.Delete
应该做你想做的事情。 如果您调用的工作表与“Sheet1”不同,请更改引号内的内容。 严格地说,你不需要指定它是你想要删除的整行,因为你已经说过它是Rows(2)
所处理的Rows(2)
,但是在那里不应该有任何伤害无论是。
如果您还想从其他工作簿中删除(或者只是确保删除发生在正确的工作簿中),则还可以指定工作簿名称:
Workbooks("Workbookname.xlsm").Worksheets("Sheet1").Rows(2).EntireRow.Delete
如果您的button位于任何其他工作表中,并且您想从另一工作表中删除一行,则只需激活该工作表即可。 例如,您正试图从Sheet1中删除行,然后您可以通过这一行来激活表单。
Sheets(0).Activate