从 Excel 的行号列表中删除特定行

从 Excel 的行号列表中删除特定行

我有一张包含 83,188 行和 4 列数据的工作表。

我有另一张工作表,其中有一列行号(例如 18751、9127、696 等),表示我想从 83,188 x 4 工作表中删除的行。

这些行号是使用 =XMATCH() 公式 + 粘贴值找到的。

总共有 1,746 个唯一的行号,我想从 83,188 x 4 列的工作表中删除它们。

有没有办法使用 VBA 删除这 1,746 行?如果不使用 VBA,另一种可能的解决方案是选择所有这些行并删除它们?

注意:如果 VBA 删除第 18751 行等,这种转变是否会导致我的行号其余部分不正确,因为 83,188 x 4 数据变成了 83187 x 4?

答案1

有几种方法可以实现这一点。最简单的方法之一:

  1. 在数据表中添加第五列,并添加标题,例如“订单”,以及如下公式 =IF(COUNTIF(Sheet_with_row_numbers!$A$1:$A$1746;ROW());"";ROW())

对于要删除的行,单元格将保持为空。对于其他行,单元格将具有其行号。

  1. 用其结果替换此列中的公式(例如,复制并粘贴特殊值)
  2. 按照“顺序”列中的值的升序对表进行排序。
  3. 转到表格末尾,再次查看最后位于最底部的行。如果要删除的行已被选中,则删除它们
  4. 删除辅助列“订单”

相关内容