跳至主要内容

如何在Excel中为缺失的连续数字插入数字或行?

Author: Xiaoyang Last Modified: 2025-05-07

假设你在工作表中有一列连续的数字,但序列中缺少了一些数字,现在你需要插入这些缺失的数字或空白行以确保序列完整(如下图所示)。你该如何快速在Excel中解决这个问题呢?

original data arrow right insert rows for missing sequential numbers

使用排序和删除重复项功能插入缺失的序列数字

使用Kutools for Excel插入缺失的数字或空白行

使用VBA代码插入缺失的序列数字

使用VBA代码为缺失的序列插入空白行


arrow blue right bubble 使用排序和删除重复项功能插入缺失的序列数字

也许你可以逐个找到缺失的数字,然后插入它们,但如果存在数百个连续数字,很难确定缺失数字的位置。在Excel中,我可以使用“排序”和“删除重复项”功能来处理此任务。

1. 在序列列表末尾,填写另一组从2005023001到2005023011的连续数字。请参见截图:

fill in another sequence numbers below the data list

2. 然后选择这两组连续数字的区域,并点击数据 > 升序排序,参见截图:

screenshot of clicking Data > Sort A to Z

3. 选中的数据已按以下截图排序:

the data has been sorted

4. 接下来,你需要通过点击 数据 > 删除重复项来删除重复项,在弹出的“删除重复项”对话框中,勾选要删除重复项的名,参见截图:

screenshot of clicking Data > Remove Duplicates arrow right check the Column name that you want to remove the duplicates

5. 然后点击 确定A列中的重复项已被删除,序列列表中的缺失数字已被插入,参见截图:

the missing numbers in the sequence list have been inserted


arrow blue right bubble 使用Kutools for Excel插入缺失的数字或空白行

这里,我将介绍一个简单易用的工具——Kutools for Excel,通过其查找缺失序列号功能,你可以快速插入缺失的序列号或在现有数据序列之间插入空白行。

Kutools for Excel 提供了超过 300 种高级功能,简化复杂任务,提升创造力与效率。 通过集成 AI 能力,Kutools 能够精准自动执行任务,让数据管理变得轻松简单。Kutools for Excel 的详细信息...         免费试用...

如果你已经安装了 Kutools for Excel,请按照以下步骤操作:

1. 选择要插入缺失数字的数据序列。

2. 点击 Kutools > 插入 > 查找缺失序列号,参见截图:

click Find Missing Sequence Number feature of kutools

3. 在“查找缺失序列号”对话框中,勾选“插入缺失的序列号”以插入缺失的数字,或者勾选“遇到缺失序列号时插入空白行”以根据需要插入空白行。参见截图:

select the options you need in the dialog box

4. 然后点击确定按钮,缺失的序列号或空白行将被插入到数据中,参见截图:

original data  arrow right insert missing numbers arrow right insert rows for missing numbers

立即下载并免费试用Kutools for Excel!


arrow blue right bubble 使用VBA代码插入缺失的序列数字

如果你觉得上述方法步骤太多,这里也有VBA代码可以帮助你完成此问题。请按照以下步骤操作:

1. 按住ALT + F11键,打开Microsoft Visual Basic for Applications窗口。

2. 点击 插入 > 模块,并将以下代码粘贴到模块窗口中。

VBA:为序列插入缺失的数字

Sub InsertValueBetween()
'Updateby Extendoffice
Dim WorkRng As Range
Dim Rng As Range
Dim outArr As Variant
Dim dic As Variant
Set dic = CreateObject("Scripting.Dictionary")
'On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
num1 = WorkRng.Range("A1").Value
num2 = WorkRng.Range("A" & WorkRng.Rows.Count).Value
interval = num2 - num1
ReDim outArr(1 To interval + 1, 1 To 2)
For Each Rng In WorkRng
    dic(Rng.Value) = Rng.Offset(0, 1).Value
Next
For i = 0 To interval
    outArr(i + 1, 1) = i + num1
    If dic.Exists(i + num1) Then
        outArr(i + 1, 2) = dic(i + num1)
    Else
        outArr(i + 1, 2) = ""
    End If
Next
With WorkRng.Range("A1").Resize(UBound(outArr, 1), UBound(outArr, 2))
    .Value = outArr
    .Select
End With
End Sub

3. 然后按F5键运行此代码,会弹出一个提示框,请选择要插入缺失数字的数据范围(不要选择标题区域),参见截图:

vba code to select the data list

4. 然后点击确定,缺失的数字将被插入到序列列表中。参见截图:

original data arrow right Insert missing numbers for sequence

arrow blue right bubble 使用VBA代码为缺失的序列插入空白行

有时,你只需要定位缺失数字的位置并在数据之间插入空白行,以便根据需要输入信息。当然,以下VBA代码也可以帮助你解决此问题。

1. 按住ALT + F11键,打开Microsoft Visual Basic for Applications窗口。

2. 点击插入 > 模块,并将以下代码粘贴到模块窗口中。

VBA:为缺失的序列插入空白行

Sub InsertNullBetween()
'Updateby Extendoffice
Dim WorkRng As Range
Dim Rng As Range
Dim outArr As Variant
Dim dic As Variant
Set dic = CreateObject("Scripting.Dictionary")
'On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
num1 = WorkRng.Range("A1").Value
num2 = WorkRng.Range("A" & WorkRng.Rows.Count).Value
interval = num2 - num1
ReDim outArr(1 To interval + 1, 1 To 2)
For Each Rng In WorkRng
    dic(Rng.Value) = Rng.Offset(0, 1).Value
Next
For i = 0 To interval
    If dic.Exists(i + num1) Then
        outArr(i + 1, 1) = i + num1
        outArr(i + 1, 2) = dic(i + num1)
    Else
        outArr(i + 1, 1) = ""
        outArr(i + 1, 2) = ""
    End If
Next
With WorkRng.Range("A1").Resize(UBound(outArr, 1), UBound(outArr, 2))
    .Value = outArr
    .Select
End With
End Sub

3. 然后按F5键运行此代码,会弹出一个提示框,然后选择要为缺失序列插入空白行的数据范围(不要选择标题区域),参见截图:

vba code to select data list

4. 然后点击确定,空白行将被插入到缺失的序列列表中。参见截图:

original data arrow right Insert blank rows for missing sequence

相关文章:

如何在Excel中识别缺失的数字序列?

最佳办公效率工具

🤖 Kutools AI 助手:基于智能执行生成代码创建自定义公式分析数据并生成图表调用 Kutools 函数等功能,彻底改变数据分析方式…
热门功能查找、高亮或标记重复项 | 删除空行 | 合并不丢失数据的列或单元格 | 四舍五入 ...
高级 LOOKUP多条件 VLookup | 多值 VLookup | 多表查找 | 模糊查找 ....
高级下拉列表快速创建下拉列表 | 从属下拉列表 | 多选下拉列表 ....
列管理器添加指定数量的列 | 移动列 | 切换隐藏列的可见状态 | 比较区域和列 ...
精选功能网格聚焦 | 设计视图 | 增强编辑栏 | 工作簿与工作表管理器 | 资源库(自动文本) | 日期提取 | 合并数据 | 加密/解密单元格 | 按列表发送电子邮件 | 超级筛选 | 特殊筛选(筛选粗体/斜体/删除线...)...
排名前 15 的工具集12 种文本 工具添加文本删除特定字符等) | 50 多 种图表 类型甘特图等) | 40 多种实用 公式基于生日计算年龄等) | 19 种插入 工具插入二维码根据路径插入图片等) | 12 种转换 工具小写金额转大写汇率转换等) | 7 种合并与分割 工具高级合并行分割单元格等) | 还有更多...

使用 Kutools for Excel 提升您的 Excel 技能,体验前所未有的高效。 Kutools for Excel 提供超过 300 种高级功能来提高生产力并节省时间。 单击此处获取您最需要的功能...


Office Tab 将标签式界面引入 Office,让您的工作更加轻松

  • 在 Word、Excel、PowerPoint 中启用标签式编辑和阅读
  • 在同一窗口的新标签页中打开和创建多个文档,而不是在新窗口中进行操作。
  • 将您的生产力提升 50%,每天为您减少数百次鼠标点击!