Страницы: 1
RSS
Список уникальных значений с разных листов одного файла
 
Подскажите как возможно сделать следующее.
Каждый день на новом листе файла (название листа= число месяца) формируется список сотрудников (два столбца - Фамиля, имя_отчество). Каждый день разный и по составу и по кол-ву строк, причем в теории возможны повторы в рамках одного листа.

Нужно что бы на первом лисе файла (обзовем его СВОД) формировалась выборка уникальных значений (Фамилия,имя_отчество) из всех листов (без повторов). Т.е. задача получить общий список сотрудников без повторов которые есть на листах дней.
 
Sergeyk, антиспам скрыл Ваше сообщение, продублируйте его и прикрепите небольшой файл-пример согласно правил.
По вопросу: макросом можно выбрать список уникальных с нескольких листов.
Изменено: БМВ - 19.06.2022 18:32:14
 
Добрый день!
Подскажите как реализовать такую задачу:
В файое каждый день на новом листе (название листа = номеру дня месяца) формируется список сотрудников (два столбика : А: Фамилия, B: Имя_Отчество), количесво сотрудников разное, в теории возможны поdторения.

Надо на первом листе (ну назовем его СВОД) получить список всех сотрудников со всех листов, т.е. список уникальных значений

В принципе устроит и решение просто получить единый столбец всех значений (без пустых строк), из него уже уникальные значения выбрать понятно как.
Изменено: Sergeyk - 18.06.2022 22:29:44
 
Цитата
написал:
Sergeyk, антиспам скрыл Ваше сообщение, продублируйте его и прикрепите небольшой файл-пример согласно правил.
По вопросу: макросом можно выбрать список уникальных с нескольких листов.
Не хотелось бы макросы использовать
 
1) руками
2) макрос
3) Power Query
Изменено: New - 20.06.2022 15:52:06
 
Вариант PQ
Код
let
    Source = Excel.Workbook(File.Contents("C:\Users\seven\Documents\Documents\Пример(4).xlsx"), null, true),
    #"Removed Top Rows" = Table.Skip(Source,1),
    #"Removed Bottom Rows" = Table.RemoveLastN(#"Removed Top Rows",3),
    #"Removed Columns" = Table.RemoveColumns(#"Removed Bottom Rows",{"Item", "Kind", "Hidden", "Name"}),
    #"Expanded Data" = Table.ExpandTableColumn(#"Removed Columns", "Data", {"Column1", "Column2"}, {"Data.Column1", "Data.Column2"}),
    #"Removed Duplicates" = Table.Distinct(#"Expanded Data"),
    #"Promoted Headers" = Table.PromoteHeaders(#"Removed Duplicates", [PromoteAllScalars=true]),
    #"Renamed Columns" = Table.RenameColumns(#"Promoted Headers",{{"Column1", "Фамилия"}, {"Column2", "ИМЯ_Отчество"}})
in
    #"Renamed Columns"
 
Так, а вообще на базе формул реально "собрать" столбы с листов в один столбец без пропусков, если не известно кол-во строк в столбцах? ( без учета уникальности, дублей и т.д.).

Сильно не хочется в макросы уходить.
 
Цитата
Спсибо!!
Изменено: Sergeyk - 19.06.2022 14:52:36
 
Sergeyk,  зачем процитировали код? Какой в этом смысл?
 
Цитата
написал:
Sergeyk,  зачем процитировали код? Какой в этом смысл?
Прошу прощения.  
 
Капец!
 
Sergeyk, вам пытаются объяснить, что не нужно нажимать на кнопку "Цитировать" - если вы не хотите из длинного текста акцентировать внимание на её небольшой части. А вместо этого желательно нажимать кнопку "Имя", да, такая кнопка есть и она находится на 1 сантиметр правее кнопки "Цитировать" и желательно нажимать её, если вы хотите обратиться к конкретному человеку. Т.е. просто забудьте про кнопку "Цитировать" и откройте для себя кнопку "Имя"
 
вот была похожая тема с решением формулами (но с ограничением)
Страницы: 1
Наверх