Excel VBA - 从应用程序调用方向上移动单元格值



我有一个数据表。当用户单击"删除"时,将删除适用的行。我希望下面其余行的数据向上移动一个单元格。

rs = ActiveSheet.Buttons(Application.Caller).TopLeftCell.Row

我将 rs 设置为应用程序调用者的行(即正在删除的行),因此我希望每个值高于 rs 的单元格向上移动一个。

我想循环浏览工作表中的每个单元格需要一段时间?该表设置在 B-P 列之间。目前,每行中唯一有一个条目的列是 B,那么有没有办法解决这个问题,并在循环到达 B 列中没有条目的单元格时停止循环?

提前致谢

您可以在删除命令中执行此操作。

Range("Your Range”).Delete Shift:=xlUp

该代码适用于工作表行,但您可以根据表对其进行调整。

Dim ws As Excel.Worksheet
Set ws = ActiveWorkbook.Sheets("Sheet1")
ws.ListObjects("Table3").Range.Rows(4).Delete xlShiftUp

这将删除表的第四行。你的可能是

ws.ListObjects("Table3").Range.Rows(rs).Delete xlShiftUp

下面是一些有关使用表的好信息。 http://www.thespreadsheetguru.com/blog/2014/6/20/the-vba-guide-to-listobject-excel-tables

最新更新