使用这个简单的宏在 Excel 中插入自定义行数

Microsoft Office应用程序的巧妙设计

我之所以说Microsoft Office应用程序的设计非常智能,并非仅仅因为它们简化了我的工作流程,而是因为它们确实如此。前几天,我们发表了一篇关于在Office 2013中插入YouTube视频的文章,并特别指出MS Excel中没有此选项,因为在Excel中并不需要这个功能。这就是我所说的智能之处:了解特定类型的应用程序需要哪些功能。这样可以确保最终产品不会包含任何不必要的内容。但是,让我感到惊讶的是,Excel允许你在工作表中插入行,但却不让你选择要添加的行数。虽然有一些其他方法可以实现这个目标,例如选择与你想要添加的行数相同的现有行,然后使用插入功能,或者重复执行插入行的操作,虽然这些方法有点繁琐,但如果你愿意花五分钟的时间,这个小宏可以为你处理这项任务。

由于这需要宏,所以你需要将文件保存为启用宏的Excel文件。要这样做,请在“另存为”窗口中点击“另存为类型”下拉菜单,然后选择“Excel启用宏的工作簿(*xlsm)”。

接下来,是时候编写宏了。点击“视图”选项卡,然后点击“宏”以创建一个新的宏。将宏命名为你喜欢的任何名称,然后点击“创建”。此时,以下窗口将自动打开。

在这个窗口中,关键的是“Sub”和“End Sub”这两行。“Sub”行包含你的宏的名称,而“End Sub”行则表示宏中命令的结束。因为你刚刚创建了这个宏,所以这两行之间应该没有任何内容,如上面的屏幕截图所示。请在这两行之间粘贴以下内容:

      Dim CurrentSheet As Object

      ' 循环遍历所有选定的工作表。
      For Each CurrentSheet In ActiveWindow.SelectedSheets
          ' 在每个工作表的顶部插入5行。
          CurrentSheet.Range("a1:a5").EntireRow.Insert
      Next CurrentSheet
    

这段代码会在最顶部插入五行。它在代码中被引用为A1:A5。要根据你的需要进行编辑,你需要修改此范围。第一个值用于指定插入行的位置。如果将其更改为A100,则会在前99行之后插入行。设置参考点后,你需要输入行数。

行数由单元格范围A1:A5定义。这个范围将插入5行。要找到适合你的行数的正确范围,例如,你想从A99插入25行,你应该在参考点上加上25,使其为A99,然后再减去一个单元格。即A100 + 99 – 1 = A198。你添加的是行而不是列,因此只有数字会改变,而不是列字母。每次你必须插入行时,都需要更新宏,但这只是一个小的编辑,它工作得非常好,所以值得你花点时间。

宏通过 Microsoft 支持