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

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

Author: Xiaoyang Last Modified: 2025-06-05

Если у вас есть список диапазона данных, который содержит некоторые повторяющиеся значения в определенном столбце, и вы хотите переместить все строки на другой лист на основе повторяющихся ячеек. Как можно справиться с этой задачей в Excel?

Переместить все строки на другой лист на основе повторяющихся ячеек в столбце

Переместить все строки на другой лист на основе повторяющихся строк


Переместить все строки на другой лист на основе повторяющихся ячеек в столбце

Если в столбце есть повторяющиеся значения, затем переместите все строки на другой лист, следующий код VBA может помочь вам:

1. Удерживайте клавиши ALT + F11, чтобы открыть окно Microsoft Visual Basic for Applications.

2. Нажмите Вставить > Модуль и вставьте следующий код в окно Модуля.

Код VBA: Переместить все строки на другой лист на основе повторяющихся ячеек в столбце:

Sub CutDuplicates()
'Updateby Extendoffice
    Dim xRgS As Range
    Dim xRgD As Range
    Dim I As Long, J As Long
    On Error Resume Next
    Set xRgS = Application.InputBox("Please select the column:", "KuTools For Excel", Selection.Address, , , , , 8)
    If xRgS Is Nothing Then Exit Sub
    Set xRgD = Application.InputBox("Please select a desitination cell:", "KuTools For Excel", , , , , , 8)
    If xRgD Is Nothing Then Exit Sub
    xRows = xRgS.Rows.Count
    J = 0
    For I = xRows To 1 Step -1
        If Application.WorksheetFunction.CountIf(xRgS, xRgS(I)) > 1 Then
            xRgS(I).EntireRow.Copy xRgD.Offset(J, 0)
            xRgS(I).EntireRow.Delete
            J = J + 1
        End If
    Next
End Sub

3. Затем нажмите клавишу F5, чтобы запустить этот код, и в появившемся диалоговом окне выберите столбец, содержащий повторяющиеся ячейки, которые вы хотите переместить, см. скриншот:

select the column which contains the duplicate cells to move based on

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

elect a cell in another sheet to put the moved rows

5. Затем нажмите OK, строки, которые имеют повторяющиеся значения в столбце A, были перемещены на новый лист, см. скриншот:

the rows which have duplicate values in column A are moved into a new sheet

a screenshot of kutools for excel ai

Раскройте магию Excel с Kutools AI

  • Умное выполнение: Выполняйте операции с ячейками, анализируйте данные и создавайте диаграммы — всё это посредством простых команд.
  • Пользовательские формулы: Создавайте индивидуальные формулы для оптимизации ваших рабочих процессов.
  • Кодирование VBA: Пишите и внедряйте код VBA без особых усилий.
  • Интерпретация формул: Легко разбирайтесь в сложных формулах.
  • Перевод текста: Преодолейте языковые барьеры в ваших таблицах.
Улучшите возможности Excel с помощью инструментов на базе ИИ. Скачать сейчас и испытайте беспрецедентную эффективность!

Переместить все строки на другой лист на основе повторяющихся строк

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

1. Удерживайте клавиши ALT + F11, чтобы открыть окно Microsoft Visual Basic for Applications.

2. Нажмите Вставить > Модуль и вставьте следующий код в окно Модуля.

Код VBA: Переместить все строки на другой лист на основе повторяющихся строк:

Sub CutDuplicates()
'Updateby Extendoffice
    Dim xRgD As Range, xRgS As Range
    Dim I As Long, J As Long, K As Long, KK As Long
    On Error Resume Next
    Set xRgS = Application.InputBox("Please select the data range:", "KuTools For Excel", Selection.Address, , , , , 8)
    If xRgS Is Nothing Then Exit Sub
    Set xRgD = Application.InputBox("Please select a desitination cell:", "KuTools For Excel", , , , , , 8)
    If xRgD Is Nothing Then Exit Sub
    KK = 0
    For I = xRgS.Rows.Count To 1 Step -1
        For J = 1 To I - 1
            For K = 1 To xRgS.Columns.Count
                Debug.Print xRgS.Rows(I).Cells(, K).Value
                Debug.Print xRgS.Rows(J).Cells(, K).Value
                If xRgS.Rows(I).Cells(, K).Value <> xRgS.Rows(J).Cells(, K).Value Then Exit For
            Next
            If K = xRgS.Columns.Count + 1 Then
                xRgS.Rows(I).EntireRow.Copy xRgD.Offset(KK, 0).EntireRow
                xRgS.Rows(I).EntireRow.Delete
                KK = KK + 1
            End If
        Next
    Next
End Sub

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

select the select the data range to move the duplicate rows

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

select a cell in a new sheet to put the moved supplicate rows

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

the duplicate rows are moved into another sheet

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

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

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


Office Tab добавляет вкладки в Office и делает вашу работу намного проще

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