Совет. Другие языки - Google-Translated. Вы можете посетить English версия этой ссылки.
Войти
x
or
x
x
Регистрация
x

or

Как скопировать строки из нескольких листов на основе критериев в новый лист?

Предположим, у вас есть рабочая книга с тремя рабочими таблицами, форматирование которых соответствует приведенному ниже снимку экрана. Теперь вы хотите скопировать все строки из этих таблиц, столбец C которых содержит текст «Завершено», в новую таблицу. Как можно быстро и легко решить эту проблему, не копируя и не вставляя их по одному вручную?

Копировать строки из нескольких листов на основе критериев в новый лист с кодом VBA


Копировать строки из нескольких листов на основе критериев в новый лист с кодом VBA

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

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

2. Щелчок Вставить > модуль, и вставьте следующий код в окно модуля.

Код VBA: копирование строк из нескольких листов на основе критериев в новый лист

Public Sub CopyRows_ValuesAndNumberFormats()
Dim xWs As Worksheet
Dim xCWs As Worksheet
Dim xRg As Range
Dim xStrName As String
Dim xRStr As String
Dim xRRg As Range
Dim xC As Integer
On Error Resume Next
Application.DisplayAlerts = False
xStr = "Kutools for Excel"
xRStr = "Completed"
Set xCWs = ActiveWorkbook.Worksheets.Item(xStr)
If Not xCWs Is Nothing Then
    xCWs.Delete
End If
Set xCWs = ActiveWorkbook.Worksheets.Add
xCWs.Name = xStr
xC = 1
For Each xWs In ActiveWorkbook.Worksheets
    If xWs.Name <> xStr Then
        Set xRg = xWs.Range("C:C")
        Set xRg = Intersect(xRg, xWs.UsedRange)
        For Each xRRg In xRg
            If xRRg.Value = xRStr Then
               xRRg.EntireRow.Copy
               xCWs.Cells(xC, 1).PasteSpecial xlPasteValuesAndNumberFormats
               xC = xC + 1
            End If
        Next xRRg
    End If
Next xWs
Application.DisplayAlerts = True
End Sub

Внимание: В приведенном выше коде:

  • Текст "Завершенный" в этом xRStr = "Завершено" скрипт указывает на конкретное условие, на которое вы хотите копировать строки;
  • C: C В этом Установите xRg = xWs.Range ("C: C") сценарий указывает конкретный столбец, в котором находится условие.

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


Более относительное извлечение или копирование данных статей:

  • Копировать данные на другой лист с расширенным фильтром в Excel
  • Как правило, мы можем быстро применить функцию расширенного фильтра для извлечения данных из необработанных данных в одном листе. Но иногда, когда вы пытаетесь скопировать отфильтрованный результат на другой лист, вы получаете следующее предупреждающее сообщение. В таком случае, как вы можете справиться с этой задачей в Excel?
  • Копировать строки в новый лист на основе критериев столбца в Excel
  • Например, есть таблица покупок фруктов, и теперь вам нужно скопировать записи на новый лист на основе указанных фруктов, как это легко сделать в Excel? Здесь я представлю несколько методов для копирования строк на новый лист на основе критериев столбцов в Excel.
  • Копировать строки, если столбец содержит определенный текст / значение в Excel
  • Предположим, вы хотите узнать ячейки, содержащие определенный текст или значение в столбце, а затем скопировать всю строку, в которой находится найденная ячейка, как вы можете с ней справиться? Здесь я представлю пару методов, чтобы найти, содержит ли столбец определенный текст или значение, а затем скопировать всю строку в Excel.


  • Супер Формула Бар (легко редактировать несколько строк текста и формул); Макет чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон...
  • Объединить ячейки / строки / столбцы и хранение данных; Содержание сплит-клеток; Объедините дублирующиеся строки и сумму / среднее... предотвратить повторяющиеся клетки; Сравнить диапазоны...
  • Выберите Дубликат или Уникальный Ряды; Выберите пустые строки (все ячейки пусты); Супер найти и нечеткая находка во многих рабочих тетрадях; Случайный выбор ...
  • Точная копия Несколько ячеек без изменения формулы ссылки; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое ...
  • Любимые и быстро вставляемые формулы, Диапазоны, графики и рисунки; Шифрование ячеек с паролем; Создать список рассылки и отправлять электронные письма ...
  • Извлечение текстаДобавить текст, Удалить по позиции, Удалить пространство; Создание и печать промежуточных итогов подкачки; Преобразование содержимого ячеек и комментариев...
  • Суперфильтр (сохранить и применить схемы фильтров к другим листам); Расширенный поиск по месяцам / неделям / дням, частоте и более; Специальный фильтр жирным шрифтом, курсивом ...
  • Объединить рабочие тетради и рабочие листы; Объединение таблиц на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF...
  • Группировка сводных таблиц по номер недели, день недели и многое другое ... Показать разблокированные, заблокированные ячейки разными цветами; Выделите ячейки, которые имеют формулу / имя...
вкладка kte 201905
  • Включить редактирование и чтение с вкладками в Word, Excel, PowerPoint, Издатель, Доступ, Visio и Проект.
  • Открывайте и создавайте несколько документов в новых вкладках одного и того же окна, а не в новых окнах.
  • Увеличивает вашу производительность на 50% и уменьшает сотни щелчков мышью для вас каждый день!
нижняя часть офиса
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.

Be the first to comment.