Excel 2010删除每57(和4更多)行

我需要一个macros代码来删除第57行之后的第58行和第4行。 即我需要删除行号58,59,60,61和62(共5个)。

我需要在整个表格上重复这个模式。 所以在macros删除58,59,60,61和62行后,需要删除115,116,117,118和119行(它们之间的差值115-57 = 58)。

我试图在互联网上查找,但找不到符合我需求的文章。 任何帮助将不胜感激。

谢谢。

下一次你发布一个问题,如果至less你尝试了一些东西,你会得到更好的关注和反馈。 一个好的第一步是在Excel中运行macroslogging器,删除几行并检查已经生成的代码。 从那里,最终的解决scheme不是很远。

Sub deleteRows() Dim i As Long Dim maxRow As Long maxRow = ActiveSheet.UsedRange.Rows.Count For i = 58 To maxRow Step 52 'Step 52, not 57, because we delete 5 rows each time Range(Rows(i), Rows(i + 4)).Delete Shift:=xlUp Next i End Sub 

对于非代码方法,您可以select数据旁边的空白列,然后尝试以下步骤:

  • select范围,例如A57:A60,然后按Ctrl + EnterinputX以填充单元格
  • select重复范围,例如A1:A60,并填充到数据的末尾(或使用复制/粘贴)
  • 按Ctrl + Shift + \select所有的X (转到特殊的列差异或使用自动filter)
  • 从“主页”选项卡的“单元格”部分中select“删除”>“表单行”

你完成了。 这也保留了撤销堆栈,所以你可以回溯如果需要的话。