如何在 Excel 中根据单元格值自动插入行?
ms excelmicrosoft technologiescomputers更新于 2024/10/3 13:32:17
假设我们需要在指定值的下方或上方插入一行。此过程在 Excel 中默认无法完成,因此我们将借助 VBA 应用程序来完成。阅读本教程,了解如何在 Excel 中根据单元格值自动插入行。如果我们尝试手动完成此任务,可能会非常耗时,因为插入新行需要多个步骤。
在 Excel 中根据单元格值自动插入行
在这里,我们将首先插入一个 VBA 模块,然后运行代码来完成任务。让我们通过一个简单的过程来理解如何在 Excel 中根据单元格值在下方插入一行。
步骤 1
假设有一张 Excel 工作表,其中的数据与下图所示类似。
现在右键单击工作表名称,选择"查看代码"以打开 VBA 应用程序,然后点击"插入"并选择"模块",然后在文本框中输入程序,如下图所示。
示例
Sub BlankLine() 'Updated by Nirmal Dim Rng As Range Dim WorkRng As Range On Error Resume Next xTitleId = "Enter the value" Set WorkRng = Application.Selection Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8) Set WorkRng = WorkRng.Columns(1) xLastRow = WorkRng.Rows.Count Application.ScreenUpdating = False For xRowIndex = xLastRow To 1 Step -1 Set Rng = WorkRng.Range("A" & xRowIndex) If Rng.Value = "10000" Then Rng.Offset(1, 0).EntireRow.Insert Shift:=xlDown End If Next Application.ScreenUpdating = True End Sub
代码中的 10000 是您要插入的单元格值。
步骤 2
将工作表另存为启用宏的工作表,然后按 F5 键运行代码。将出现一个弹出窗口;选择要应用代码的范围,最终输出将如下图所示的数据。
如我们所见,新行插入到下方。要将行插入到单元格上方,请使用以下代码 -
示例
Sub BlankLine() 'Update by Nirmal Dim Rng As Range Dim WorkRng As Range On Error Resume Next xTitleId = "Enter the range" Set WorkRng = Application.Selection Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type: = 8) Set WorkRng = WorkRng.Columns(1) xLastRow = WorkRng.Rows.Count Application.ScreenUpdating = False For xRowIndex = xLastRow To 1 Step - 1 Set Rng = WorkRng.Range("A" & xRowIndex) If Rng.Value = "0" Then Rng.EntireRow.Insert Shift: = xlDown End If Next Application.ScreenUpdating = True End Sub
结论
在本教程中,我们使用了一个简单的示例来演示如何在 Excel 中根据单元格值插入一行。
相关文章
有用资源
excel 参考教程 - 该教程包含有关 excel 的更多信息:https://www.cainiaomax.com/excel/

