Как скопировать данные из фильтра в excel
Перейти к содержимому

Как скопировать данные из фильтра в excel

  • автор:

Как скопировать данные из фильтра в excel

Argument ‘Topic id’ is null or empty

Сейчас на форуме

© Николай Павлов, Planetaexcel, 2006-2023
info@planetaexcel.ru

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

ООО «Планета Эксел»
ИНН 7735603520
ОГРН 1147746834949
ИП Павлов Николай Владимирович
ИНН 633015842586
ОГРНИП 310633031600071

Переместить фильтр

Команда копирует фильтр из одной таблицы и переносит его на любую другую таблицу, сохраняя все условия фильтрации. Для чего это может быть нужно? Предположим, имеется таблица:
Пример таблицы с фильтром
В ней отфильтрованы данные по трем столбцам: Контрагент, Отсрочка платежа дни, Штрафы за просрочку оплаты. При этом из более чем 80-ти контрагентов отобрано фильтром только 25 необходимых, для отсрочки платежа установлено условие не показывать строки с просрочкой 25 дней и менее, а для штрафов — не показывать строки с суммами меньше или равные 1000р.
Ситуация1: точно такие же условия надо применить к такой же таблице, но за другие периоды. Вручную придется в другой таблице заново выбирать всех контрагентов и проставлять условия на другие столбцы.
Ситуация2: в таблицу необходимо добавить еще один столбец — Условия предоставления кредитного лимита. И поверх прежних условий фильтрации применить фильтр еще и по новому столбцу. Вручную придется сначала полностью убрать фильтр с листа, добавить столбец, установить фильтр заново и прописать все условия. Никак по-другому не получится(если только речь не об умной таблице — Вставка -Таблица).
С помощью команды Переместить фильтр обе ситуации становятся решаемыми очень просто. Все, что необходимо — выделить диапазон с нужным фильтром, перейти на вкладку MulTEx -группа Ячейки/ДиапазоныДиапазоныПереместить фильтр:
Перенести фильтр

Копировать условия фильтра из диапазона: указывается одна ячейка или диапазон ячеек в листе, условия фильтра из которого необходимо скопировать. Даже если таблица выделена не полностью, указана всего одна ячейка или ячейка выходит за границы таблицы — область работы фильтра будет определена автоматически.

И распространить эти условия на диапазон: указывается диапазон ячеек вместе с заголовком, к которому необходимо применить скопированные условия фильтрации.
Если столбцов в новом диапазоне меньше, чем в скопированном фильтре — то в новую таблицу будут перенесены условия первых n столбцов скопированного фильтра, где n — количество столбцов в новой таблице. Если столбцов больше — фильтр будет установлен на все указанные столбцы.
Если условия скопированного фильтра необходимо распространить на умную таблицу(Вставка (Insert)Таблица (Table) ), то в поле И распространить эти условия на диапазон допускается указать одну любую ячейку внутри этой таблицы. Границы такой таблицы будут определены автоматически.

Расскажи друзьям, если статья оказалась полезной:

Видеоинструкции по использованию надстройки MulTEx

Поделитесь своим мнением

Комментарии, не имеющие отношения к комментируемой статье, могут быть удалены без уведомления и объяснения причин. Если есть вопрос по личной проблеме — добро пожаловать на Форум

Создание фильтра и копирование результатов фильтрации на другой лист (либо в другой файл)

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

Т.е. я так понимаю необходимо создать фильтр по заданным параметрам и скопировать результат фильтрации.

Пробую через CTRL+F найти нужные строки. Получается. Вижу массив.
Но как найденное скопировать и вставить в другой файл (или лист), не знаю.

Помогите , пожалуйста, решить вопрос (желательно попроще )
Заранее благодарю

94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:

Поиск в столбце и запись результатов на другой лист
Добрый день! Нужен макрос, который работает через ‘элемент управления формы’ (поле) Суть в том.

КОПИРОВАНИЕ НА ДРУГОЙ ЛИСТ ПО ДАТАМ
Доброго времени суток! Возможно данный вопрос уже решался, но на форуме найти я не смог. Суть.

Копирование строк в другой лист
Всем привет. Просьба помочь с задачей: В документе есть 12 листов (кол-во месяцев в году).

Подсчет повторений и копирование на другой лист
Доброго времени суток! Нужно решить макросом такую задачу (файл-пример в приложении): Sheet1 это.

5989 / 3186 / 714
Регистрация: 23.11.2010
Сообщений: 10,650

Расширенным фильтром, затем Найти/Заменить — Выделение группы ячеек — Только видимые — Копировать — Вставить в нужное место.

Если приложите файл, возможно у Вас там совсем не так как описываете)))

Регистрация: 04.12.2019
Сообщений: 7

Необходимо построчно отфильтровать людей , допустим, по станциям метро (текст), или по схожим адресам (текст),
и , соответственно, перенести результаты в другие файлы (или другие листы)
без изменения в исходном массиве.

Вложения

Книга1.xlsx (9.8 Кб, 5 просмотров)

Регистрация: 04.12.2019
Сообщений: 7

Fairuza,
Необходимо построчно отфильтровать людей , допустим, по станциям метро (текст), или по схожим адресам (текст),
и , соответственно, перенести результаты в другие файлы (или другие листы)
без изменения в исходном массиве.

Вложения

Книга1.xlsx (9.8 Кб, 5 просмотров)

5989 / 3186 / 714
Регистрация: 23.11.2010
Сообщений: 10,650

serdomka, в диапазоне не должно быть пустых столбцов, обязательно названия по столбцам.

Данные — группа Сортировка и Фильтр — Дополнительно
Обработка — отметить Скопировать результат в другое место
Исходный диапазон — это весь Ваш список
Диапазон условий — в файле 1-3 строки, посмотрите
Поместить результат в диапазон — укажите место куда надо вставить отфильтрованное, можно тоько одну ячейку

Вложения

Книга1.xlsx (10.2 Кб, 12 просмотров)

2698 / 1683 / 768
Регистрация: 23.03.2015
Сообщений: 5,327
Задача легко решается с VBA.
2698 / 1683 / 768
Регистрация: 23.03.2015
Сообщений: 5,327

как вариант.
В столбец Е выписываете заданные параметры ( можно даже часть слов) и нажимаете кнопочку.
Результат в диапазоне (K:L:M)

Вложения

Test1.rar (17.4 Кб, 13 просмотров)

4134 / 2238 / 940
Регистрация: 01.12.2010
Сообщений: 4,624

serdomka, Ещё один вариант. Тестировать на файле предыдущего оратора.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Private Sub Test() Dim a1, a2, i1&, i2&, cl1&, cl2&, cl&, rw& a1 = Range("A1").CurrentRegion.Value: cl1 = UBound(a1, 2) a2 = Range("E1").CurrentRegion.Value: cl2 = UBound(a2) For i1 = 1 To UBound(a1) For i2 = 1 To cl2 If InStr(1, a1(i1, 3), a2(i2, 1), vbTextCompare) Then rw = rw + 1 For cl = 1 To cl1 a1(rw, cl) = a1(i1, cl) Next: Exit For End If Next Next If rw = 0 Then Exit Sub Range("K:K").Resize(, cl1).ClearContents 'Если прежних результатов было больше Range("K1").Resize(rw, cl1) = a1 End Sub

Регистрация: 04.12.2019
Сообщений: 7

Fairuza, спасибо, что откликаетесь и доступно объясняете.

Но в данном случае, к сожалению, предложенный Вами вариант работает только по первым словам в столбце «адрес» — станциям метро. Просто по названию улицы или другому общему слову в тексте каждой строки, к примеру, уже не работает((
(во всем массиве не везде указано метро, к примеру).
На самом деле массив данных создан очень хаотично и некорректно ((. Где-то нет метро, где-то нет улицы, где-то и того и другого — не мой косяк, но с базой приходится работать мне. И поэтому для работы необходимо периодически делать выборку данных лишь по одному общему слову (часто последнему в строке)

Возможно ли, просто указав общее слово (НЕ ПЕРВОЕ), отфильтровать нужные строки (где есть это слово) и переместить инфу в другое место (в идеале на другой лист) .
Благодарю за помощь

покупка

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

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

Скопируйте данные на другой лист с помощью расширенного фильтра с помощью функции расширенного фильтра

Вот простой способ решения этой задачи: сделайте следующее:

1. Активируйте рабочий лист, на который вы хотите скопировать отфильтрованный результат, с помощью функции расширенного фильтра.

2. Затем нажмите Данные > Фильтр, см. снимок экрана:

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

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

Скопируйте данные на другой лист с помощью расширенного фильтра с помощью кода VBA

Если у вас есть опыт работы с кодом VBA, вы можете завершить эту работу с помощью следующего кода VBA.

1. Активируйте рабочий лист, который вы хотите отфильтровать, и скопируйте результат на другой лист.

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

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

Код VBA: скопируйте данные на другой лист с помощью расширенного фильтра:

 Sub Advancedfiltertoanothersheet() 'Updateby Extendoffice Dim xStr As String Dim xAddress As String Dim xRg As Range Dim xCRg As Range Dim xSRg As Range On Error Resume Next xAddress = ActiveWindow.RangeSelection.Address Set xRg = Application.InputBox("Please select the filter range:", "Kutools for Excel", xAddress, , , , , 8) If xRg Is Nothing Then Exit Sub Set xCRg = Application.InputBox("Please select the criteria range:", "Kutools for Excel", "", , , , , 8) If xCRg Is Nothing Then Exit Sub Set xSRg = Application.InputBox("Please select the output range:", "Kutools for Excel", "", , , , , 8) If xSRg Is Nothing Then Exit Sub xRg.AdvancedFilter xlFilterCopy, xCRg, xSRg, False xSRg.Worksheet.Activate xSRg.Worksheet.Columns.AutoFit End Sub 

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

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

6. Продолжайте нажимать OK, в появившемся диалоговом окне выберите ячейку на другом новом листе, в которой вы хотите вывести результат фильтрации, см. снимок экрана:

7, Наконец, нажмите OK Кнопка, отфильтрованные данные были выведены на другой указанный лист по мере необходимости.

Лучшие инструменты для офисной работы

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

Office Tab Добавляет в Office интерфейс с вкладками и значительно упрощает вашу работу
  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint , Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *