Перейти к содержимому

Как вставить числа или строки для отсутствующих последовательных чисел в Excel?

Author: Xiaoyang Last Modified: 2025-08-07

Предположим, у вас есть список последовательных чисел на листе, но среди последовательности есть пропущенные числа, и теперь вам нужно вставить недостающие числа или пустые строки, чтобы сделать последовательность полной (как показано на следующих скриншотах). Как можно быстро решить эту проблему в Excel?

original data arrow right insert rows for missing sequential numbers

Вставка отсутствующих чисел в последовательность с помощью функции Сортировка и Удаление дубликатов

Вставка отсутствующих чисел или пустых строк в последовательность с помощью Kutools для 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. Затем нажмите OK, дубликаты в столбце A будут удалены, и отсутствующие числа в списке последовательности будут вставлены, смотрите скриншот:

the missing numbers in the sequence list have been inserted


arrow blue right bubble Вставка отсутствующих чисел или пустых строк в последовательность с помощью Kutools для Excel

Здесь я представлю простой и удобный инструмент — Kutools для Excel, с его функцией Найти отсутствующую последовательность, вы можете быстро вставить отсутствующий номер последовательности или пустые строки между существующими данными последовательности.

Kutools для Excel предлагает более 300 продвинутых функций для упрощения сложных задач, повышая креативность и эффективность. Интеграция с возможностями ИИ позволяет Kutools автоматизировать задачи с высокой точностью, делая управление данными без усилий. Подробная информация о Kutools для Excel...  Бесплатная пробная версия...

Если вы установили Kutools для Excel, сделайте следующее:

1. Выберите последовательность данных, в которую вы хотите вставить отсутствующие числа.

2. Нажмите Kutools > Вставить > Найти отсутствующую последовательность, смотрите скриншот:

click Find Missing Sequence Number feature of kutools

3. В диалоговом окне Найти отсутствующую последовательность отметьте Вставить отсутствующие номера последовательности, чтобы вставить недостающие числа, или Вставить пустые строки при обнаружении отсутствующих номеров последовательности, чтобы вставить пустые строки по мере необходимости. Смотрите скриншот:

select the options you need in the dialog box

4. Затем нажмите кнопку OK, и отсутствующие номера последовательности или пустые строки будут вставлены в данные, смотрите скриншоты:

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

Скачайте и попробуйте Kutools для Excel прямо сейчас!


arrow blue right bubble Вставка отсутствующих чисел в последовательность с помощью кода VBA

Если вы считаете, что в вышеупомянутых методах слишком много шагов, вот также код VBA, который поможет вам решить эту проблему. Пожалуйста, сделайте следующее:

1. Удерживайте клавиши ALT + F11, и откроется окно Microsoft Visual Basic для приложений.

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. Затем нажмите OK, отсутствующие числа будут вставлены в список последовательности. Смотрите скриншоты:

original data arrow right Insert missing numbers for sequence

arrow blue right bubble Вставка пустых строк для отсутствующей последовательности с помощью кода VBA

Иногда вам просто нужно определить место отсутствующих чисел и вставить пустые строки между данными, чтобы вы могли ввести информацию по мере необходимости. Конечно, следующий код VBA также может помочь вам решить эту проблему.

1. Удерживайте клавиши ALT + F11, и откроется окно Microsoft Visual Basic для приложений.

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. Затем нажмите OK, пустые строки будут вставлены для списка отсутствующей последовательности. Смотрите скриншоты:

original data arrow right Insert blank rows for missing sequence

Связанная статья:

Как определить отсутствующие номера последовательности в Excel?

Лучшие инструменты для повышения продуктивности в Office

🤖 Kutools AI Aide: Переворот в анализе данных на основе: Интеллектуальное выполнение   |  Сгенерировать код  |  Создать Пользовательские Формулы  |  Анализ данных и генерация диаграмм  |  Вызов Kutools Functions
Популярные функции: Найти, выделить или отметить дубликаты   |  Удалить пустые строки   |  Объединить столбцы или ячейки без потери данных   |   Округлить...
Супер ПОИСК: VLookup с несколькими критериями    VLookup с несколькими значениями  |   Многолистовой поиск   |   Распознавание нечетких соответствий ....
Расширенный раскрывающийся список: Быстро создать раскр. список   |  Зависимый раскрывающийся список   |  Множественный выбор в раскрывающемся списке ....
Менеджер столбцов: Добавить определенное количество столбцов  |  Переместить столбцы  |  Переключить статус видимости скрытых столбцов  |  Сравнить диапазоны и столбцы ...
Рекомендуемые функции: Сетка фокусировки   |  Дизайн листа   |   Улучшенная строка формулы    Управление книгой и листами   |  Библиотека автотекста (Auto Text)   |  Выбор даты   |  Объединить данные   |  Шифрование/Расшифровка ячеек    Отправить письмо по списку   |  Супер фильтр   |   Специальный фильтр (фильтр по жирному/курсиву/зачеркиванию...) ...
Топ–15 наборов инструментов: 12 текстовых инструментов (Добавить текст, Удалить определенные символы, ...)   |   50+ типов диаграмм (Диаграмма Ганта, ...)   |   40+ практических формул (Расчет возраста на основе даты рождения, ...)   |   19 инструментов вставки (Вставить QR-код, Вставить изображение из пути, ...)   |  12 инструментов преобразования (Преобразовать в слова, Конвертация валюты, ...)   |  7 инструментов объединения и разделения (Расширенное объединение строк, Разделить ячейки, ...)   |   ... и многое другое
Используйте Kutools на вашем предпочитаемом языке – поддерживаются английский, испанский, немецкий, французский, китайский и более40 других языков!

Повысьте свои навыки работы в Excel с Kutools для Excel и ощутите новую эффективность. Kutools для Excel предлагает более300 расширенных функций для повышения продуктивности и экономии времени.  Щелкните здесь, чтобы получить наиболее нужную вам функцию...


Office Tab добавляет вкладочный интерфейс в Office, делая вашу работу значительно проще

  • Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Открывайте и создавайте несколько документов во вкладках одного окна, а не в новых окнах.
  • Увеличьте свою продуктивность на50% и сократите сотни кликов мышью ежедневно!