Надеюсь, у вас всех будет отличный день. У меня к вам небольшой вопрос. Я готовлю один отчет, который требует ввода с разных листов. Когда я объединяю эту информацию в один лист, появляется следующий тип организации.
Теперь мне также нужно сравнить эту информацию с другим источником, который требует взять информацию из столбцов B и C и объединить в одну ячейку против уникального значения в столбце A. Вот ответ, который я ищу
Кто-нибудь может мне помочь в этом вопросе?
решение1
это потребует небольшой подготовительной работы.
- Первый Excel должен быть таким:
- второй:
эти правки легко удалить с помощью трюка с выбором пустого поля с формулой +ctrl + enter см.здесьесли вы не знаете как
Затем нам понадобится дополнительный столбец в первом, с этой формулой: =B8&" : "&C8 Это вернет "Inst tag -a : Constraint pt-a". Затем нам понадобится формула массива, чтобы сопоставить каждое значение из этого третьего столбца, который мы создали с соответствующим сервером. ФОРМУЛА МАССИВА, ВВОД С CTRL+SHIF+ENTER! =VLOOKUP(D8,IF($A$20:$A$27=A8,$B$20:$C$27),2,FALSE)
$b$20:$c$27 — это то место, где у вас есть данные для создания vlookup с «тегом inst...»
$A$20:$A$27 должно быть местом, где во втором файле упоминается System.
А A8 — это место, где в этой строке в первом файле упоминается System.
И... Вуаля... работает...
Это довольно сложно, если вы новичок, так что дайте мне знать, если у вас получится.
решение2
Вы можете использоватьPower Query
доступно в Excel 2010+
После разработки этого запроса вы сможете легко обновлять его при добавлении новых данных.
- Из Excel: получить данные из таблицы/диапазона (или эквивалент в Excel 2010-2013)
- В редакторе PQ: выберите
Subsystem
столбец иFill --> Down
- *это заполнит пустые строки в первом столбце
- Выберите столбцы 2 и 3.
- Объединить столбцы, используя
" : "
в качестве разделителя
- Объединить столбцы, используя
- Выберите столбец 1
- Группа по
- Название нового столбцаСлитый
- Операция: Все строки
- Группа по
- Добавить столбец
- Формула: =Таблица.Столбец([Сгруппировано],"Объединено")
Выберите двунаправленную стрелку в верхней части нового столбца «Пользовательский».
- Извлечь значения
- Объединение с использованием специальных символов:#(лф) это символ перевода строки
Закрыть и загрузить
На листе Excel - Отформатируйте столбец 1 для вертикального центрирования - Отформатируйте столбец 2 для переноса по словам
Все можно сделать из пользовательского интерфейса, за исключением ввода формулы для пользовательского столбца. Но вот M-код:
М-код
let
Source = Excel.CurrentWorkbook(){[Name="Table4"]}[Content],
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Subsystem No.", type text}, {"Inst. Tag", type text}, {"Constraint", type text}}),
#"Filled Down" = Table.FillDown(#"Changed Type",{"Subsystem No."}),
#"Merged Columns" = Table.CombineColumns(#"Filled Down",{"Inst. Tag", "Constraint"},Combiner.CombineTextByDelimiter(" : ", QuoteStyle.None),"Merged"),
#"Grouped Rows" = Table.Group(#"Merged Columns", {"Subsystem No."}, {{"Grouped", each _, type table [#"Subsystem No."=text, Merged=text]}}),
#"Added Custom" = Table.AddColumn(#"Grouped Rows", "Custom", each Table.Column([Grouped],"Merged")),
#"Extracted Values" = Table.TransformColumns(#"Added Custom", {"Custom", each Text.Combine(List.Transform(_, Text.From), "#(lf)"), type text})
in
#"Extracted Values"