如何在 Excel 中为缺失的序列号插入数字或行?

ms exceladvanced excel functionmicrosoft technologies更新于 2024/10/17 0:12:17

在 Excel 中为缺失的序列号插入数字意味着用户希望使用 Excel 提供的可用功能在 Excel 中补全缺失的数字。本文将介绍执行此任务的两种基本方法。第一个例子指导您如何正确地使用 VBA 代码在 Excel 中补全缺失的序列号。这个例子可能有点冗长,因为用户需要学习如何编写代码并使用正确的代码缩进来完成任务。工作表中的另一个示例描述了如何使用 kutools 中的可用选项来填充缺失的数字。提供的两个示例都详尽简明,并包含逐步讲解如何解决数据问题。

示例 1:使用 VBA 代码在 Excel 中插入缺失的序列号。

步骤 1

要理解插入缺失序列号或行的过程,用户需要首先创建一些示例数据。在本例中,我们将写入一些随机值,例如 101、105 和 110。以下提供了数据快照以供参考。

步骤 2

之后,如前所述,我们将使用 VBA 代码解决此示例,因此用户首先需要打开 VBA 编辑器。为此,请右键单击工作表选项卡,然后选择"查看代码"选项。请参考以下提供的快照

步骤 3

上述步骤将打开一个 Microsoft Visual Basic 应用程序对话框。此对话框默认包含一个空白代码区域。以下提供了该对话框的快照

步骤 4

请参考以下代码,并将其复制到编辑器中:

' 定义函数头
Sub insert_missing_value()
' 启动函数体
' 声明所需变量
Dim range_wrk As Range
Dim r_range As Range
Dim arr_out As Variant
Dim dic As Variant
Set dic = CreateObject("Scripting.Dictionary")
' 设置 x 标题的数据
xTitleId = "宏对话框"
' 设置范围工作
Set range_wrk = Application.Selection
Set range_wrk = Application.InputBox("Range", xTitleId, range_wrk.Address, Type:=8)
' 为第一个数字赋值
num1 = range_wrk.Range("A1").Value
' 为第二个数字赋值
num2 = range_wrk.Range("A" & range_wrk.Rows.Count).Value
' 计算间隔
interval = num2 - num1
ReDim arr_out(1 To interval + 1, 1 To 2)
' for each 循环表达式
For Each r_range In range_wrk
    ' 设置提供的变量的值
    dic(r_range.Value) = r_range.Offset(0, 1).Value
' next statement
Next
' for each expression
For i = 0 To interval
    ' assign value
    arr_out(i + 1, 1) = i + num1
    ' if expression block
    If dic.Exists(i + num1) Then
        ' assign value
        arr_out(i + 1, 2) = dic(i + num1)
    ' else expression block
    Else
        ' assign value
        arr_out(i + 1, 2) = ""
    ' end of if statement
    End If
Next
' 使用关键字指定范围
With range_wrk.Range("A1").Resize(UBound(arr_out, 1), UBound(arr_out, 2))
    .Value = arr_out
    .Select
' 结束 with 块
End With
' 结束 sub 块
End Sub

步骤 5

输入或粘贴上述代码后,点击"运行"按钮。运行截图如下:

步骤 6

上述步骤将显示一个"宏对话框"。在出现的对话框中,选择范围值,在本例中,将选择从 A2 到 A4 的单元格。示例如下:

步骤 7

用户点击"确定"按钮后,缺失的数据将自动添加到 A 列,如下所示

示例 2:使用 Kutools 在 Excel 中插入缺失的序列号。

步骤 1

在本例中,也将使用相同的 Excel 电子表格。再次附上截图以供参考

步骤 2

然后点击"Kutools"选项卡,点击"编辑"磁贴,然后选择"插入"选项卡,再选择"查找缺失的序列号…"。下图为该示例的快照。

步骤 3

上述步骤将打开"查找缺失序列号"对话框。在范围标签中,选择范围数据,例如,对于所提供的示例,数据存在于 A2 至 A4 单元格中。然后在"处理缺失序列号"中,选择第一个单选按钮"插入缺失序列号",最后点击"确定"按钮。快照如下:

步骤 4

上述步骤将再次显示一个对话框,"查找缺失的序列号"。在出现的对话框中,点击"确定"按钮。

步骤 5

最终的完整序列输出快照如下所示

结论

本文演示了两个示例,第一个示例描述了使用 VBA 代码的方法,而第二个示例描述了使用 Kutools 的方法。尽管两个示例最终都生成相同的输入集。所有指导步骤都详细且准确。初学者也可以通过参考指导文章步骤来执行相同的任务。


相关文章


有用资源