Имя пользователя:
Пароль:
 | Правила  

Компьютерный форум OSzone.net » Сфера Microsoft » Microsoft Office (Word, Excel, Outlook и т.д.) » 2010 - [решено] Excel 2010 фильтр 1 и 2 листа скопировать на новый лист

Ответить
Настройки темы
2010 - [решено] Excel 2010 фильтр 1 и 2 листа скопировать на новый лист

Новый участник


Сообщения: 19
Благодарности: 0

Профиль | Отправить PM | Цитировать


Изменения
Автор: okshef
Дата: 04-11-2012
Всем привет! Не знаю как решить во такую задачку - на 1 и на 2 листе Информация из трех столбцов:
в первом она повторяется числовая в принципе с ней ничего не нужно делать только выносить на новую страницу со всей строкой
во втором уникальна числовая (но может совпадать в листе1 с лист2) можно считать что это ID
в третьем ФИО
Нужно отфильтровать и вывести ТОЛЬКО УНИКАЛЬНЫЕ значения только со второго листа, уникальные значения первого листа не нужны, на новую страницу фильтр нужно вести по двум параметрам ФИО и ID

Как это вообще можно сделать - я знаю но способ очень кривой, занимает много времени и повторять его нужно для 23 файлов - не хочется) в каждом от 2 тыс. записей
Подскажите как можно это реализовать ?
Заранее благодарен.

Таблица выглядит примерно так - состоит из 2-8 тысяч записей, нужно вынести "появившиеся" во втором листе записи, которых НЕТ в листе 1

читать дальше »
Лист1
30 13245 Иванова Екатерина Ивановна
40 54660 Петрова Нина Петровна
40 22321 Иванов Иван Иванович
50 23453 Петров Петр Иванович
50 22222 Тихомиров Василий Петрович
60 13244 Ноздрева Ирина Ивановна
40 54440 Петрова Екатерина Петровна
40 33321 Иванов Сергей Иванович
50 21153 Петров Иван Петрович
50 21112 Носов Василий Петрович

Лист2

30 13245 Иванова Екатерина Ивановна
40 54660 Петрова Нина Петровна
40 88897 Павлов Александр Иванович
50 23453 Петров Петр Иванович
50 22222 Тихомиров Василий Петрович
60 13244 Ноздрева Ирина Ивановна
40 54440 Петрова Екатерина Петровна
40 33321 Иванов Сергей Иванович
50 45544 Кузьмин Иван Сергеевич
50 13009 Каряев Михаил Петрович



желаемый результат

40 88897 Павлов Александр Иванович
50 45544 Кузьмин Иван Сергеевич
50 13009 Каряев Михаил Петрович

Отправлено: 13:55, 02-11-2012

 

Новый участник


Сообщения: 19
Благодарности: 0

Профиль | Отправить PM | Цитировать


Вложения
Тип файла: xlsx пример.xlsx
(10.9 Kb, 24 просмотров)

Пример 10 строк с желаемым результатом

Последний раз редактировалось okshef, 08-11-2012 в 12:52.


Отправлено: 12:41, 08-11-2012 | #11



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

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Модератор


Moderator


Сообщения: 16855
Благодарности: 3248

Профиль | Сайт | Отправить PM | Цитировать


То есть критерий отбора останется тот же, но в результаты нужно добавить 4-й столбец? Или все-таки 4-й столбец является критерием отбора?

-------
При заполнении сведений о конфигурации компьютера не забудь поставить флажок: отображать - "Да"
-------------------------------------------------------------------------------------------
Ассоциация VirusNet - помощь и обучение борьбе с вирусами. Некоторые вопросы загрузки в моем блоге


Отправлено: 12:51, 08-11-2012 | #12


Новый участник


Сообщения: 19
Благодарности: 0

Профиль | Отправить PM | Цитировать


4-й столбец так же является критерием поиска

Отправлено: 13:03, 08-11-2012 | #13


Модератор


Moderator


Сообщения: 16855
Благодарности: 3248

Профиль | Сайт | Отправить PM | Цитировать


Простите за массу уточняющих вопросов, но наличие 2-го критерия значительно усложняет задачу.
То есть алгоритм поиска выглядит так:
1) сравнить листы по второму столбцу
2) в случае отсутствия данных перейти к четвертому столбцу
3) если данные не совпадают - перенести на лист 3
4) если данные в 4-м столбце совпадают - продолжить поиск
Так?

-------
При заполнении сведений о конфигурации компьютера не забудь поставить флажок: отображать - "Да"
-------------------------------------------------------------------------------------------
Ассоциация VirusNet - помощь и обучение борьбе с вирусами. Некоторые вопросы загрузки в моем блоге


Отправлено: 13:14, 08-11-2012 | #14


Новый участник


Сообщения: 19
Благодарности: 0

Профиль | Отправить PM | Цитировать


1) сравнить листы по второму столбцу
2) если данные не совпадают - перенести на лист 3
3) если данные в 4-м столбце совпадают - продолжить поиск

то есть 4 столбец мы смотри уже среди найденных в 1 пункте

Отправлено: 13:28, 08-11-2012 | #15


Модератор


Moderator


Сообщения: 16855
Благодарности: 3248

Профиль | Сайт | Отправить PM | Цитировать


Опять неясность: то есть перенос в любом случае осуществляется при отсутствии в списке на листе 1 только по критерию 2.
Цитата The Off:
если данные в 4-м столбце совпадают - продолжить поиск »
он и так продолжится... Какую роль играет критерий 4?

-------
При заполнении сведений о конфигурации компьютера не забудь поставить флажок: отображать - "Да"
-------------------------------------------------------------------------------------------
Ассоциация VirusNet - помощь и обучение борьбе с вирусами. Некоторые вопросы загрузки в моем блоге


Отправлено: 13:58, 08-11-2012 | #16


Новый участник


Сообщения: 19
Благодарности: 0

Профиль | Отправить PM | Цитировать


Вложения
Тип файла: xlsx пример.xlsx
(10.6 Kb, 21 просмотров)

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

Последний раз редактировалось okshef, 08-11-2012 в 14:51.


Отправлено: 14:19, 08-11-2012 | #17


Модератор


Moderator


Сообщения: 16855
Благодарности: 3248

Профиль | Сайт | Отправить PM | Цитировать


Код: Выделить весь код
Sub findnew()
    For Each c In Worksheets(2).Columns(3).Cells
        If Worksheets(1).[c:c].Find(c.Value) Is Nothing Then
             Worksheets(2).Range("a" & c.Row).Copy Worksheets(3).Range("a" & Worksheets(3).Cells.Rows.Count).End(xlUp)(2)
             Worksheets(2).Range("c" & c.Row).Copy Worksheets(3).Range("b" & Worksheets(3).Cells.Rows.Count).End(xlUp)(2)
        End If
     If IsEmpty(c) Then Exit For
     Next
End Sub
Код поправил.

-------
При заполнении сведений о конфигурации компьютера не забудь поставить флажок: отображать - "Да"
-------------------------------------------------------------------------------------------
Ассоциация VirusNet - помощь и обучение борьбе с вирусами. Некоторые вопросы загрузки в моем блоге


Последний раз редактировалось okshef, 08-11-2012 в 14:57.

Это сообщение посчитали полезным следующие участники:

Отправлено: 14:47, 08-11-2012 | #18


Новый участник


Сообщения: 19
Благодарности: 0

Профиль | Отправить PM | Цитировать


okshef, Все работает как нужно !!! СПАСИБО ОГРОМНОЕ !!!

Еще одно - нужно удалить дубликаты на получившемся списке (некоторые записи повторяются дважды во втором листе только обнаружил) как это добавить в модуль?

Последний раз редактировалось The Off, 08-11-2012 в 16:11.


Отправлено: 15:06, 08-11-2012 | #19


Модератор


Moderator


Сообщения: 16855
Благодарности: 3248

Профиль | Сайт | Отправить PM | Цитировать


Добавьте после Next
Код: Выделить весь код
Worksheets(3).UsedRange.RemoveDuplicates Columns:=Array(1, 2), Header:=xlYes

-------
При заполнении сведений о конфигурации компьютера не забудь поставить флажок: отображать - "Да"
-------------------------------------------------------------------------------------------
Ассоциация VirusNet - помощь и обучение борьбе с вирусами. Некоторые вопросы загрузки в моем блоге


Последний раз редактировалось okshef, 09-11-2012 в 16:21.

Это сообщение посчитали полезным следующие участники:

Отправлено: 21:11, 08-11-2012 | #20



Компьютерный форум OSzone.net » Сфера Microsoft » Microsoft Office (Word, Excel, Outlook и т.д.) » 2010 - [решено] Excel 2010 фильтр 1 и 2 листа скопировать на новый лист

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
2007 - [решено] MS Excel | Как развернуть лист на весь экран ssoll Microsoft Office (Word, Excel, Outlook и т.д.) 3 17-08-2012 18:01
2010 - [решено] Excel - копирование выбранных строк на другой лист linkwy Microsoft Office (Word, Excel, Outlook и т.д.) 3 16-08-2012 21:14
VBA - [решено] Разбор листа Excel по строкам в отдельные файлы Debugger Программирование и базы данных 3 14-03-2012 15:46
2010 - Excel 2010 - фильтр по раскрывающемуся списку flower Microsoft Office (Word, Excel, Outlook и т.д.) 1 01-03-2012 14:44
Разное - Не снимается защита листа в Excel doznet Microsoft Office (Word, Excel, Outlook и т.д.) 3 17-12-2010 23:37




 
Переход