let
Source = Folder.Files("U:\Воркутинский офис продаж и обслуживания клиентов (ОПиОК)\Журналы"),
Filtered = Table.SelectRows(Source, each not Text.StartsWith([Name], "~$") and [Name] <> "1. ОТЧЕТ ТКО.xlsx"),
Pages = Table.AddColumn(Filtered, "Data", each Excel.Workbook(File.Contents([Folder Path]&[Name]), null, true)),
Loaded = Table.TransformColumns
(
Pages,
{
"Data",
(Row) =>
// Table.Combine(
List.Accumulate
(
{2018..2019},
{},
(acc, this) => acc & (try {Table.PromoteHeaders(Row{[Item=Text.From(this), Kind="Sheet"]}[Data])} otherwise {})
)
// )
}
),
Expanded = Table.ExpandListColumn(Loaded, "Data"),
#"Удаленные столбцы" = Table.RemoveColumns(Expanded,{"Content", "Extension", "Date accessed", "Date modified", "Date created", "Attributes", "Folder Path"}),
#"Развернутый элемент Data" = Table.ExpandTableColumn(#"Удаленные столбцы", "Data", {"№", "Статус", "Когда принято", "ФИО", "Улица", "Дом", "Кв.", "Причина", "Дата обработки", "Где находится", "Примечание", "БДФЛ"}, {"№", "Статус", "Когда принято", "ФИО", "Улица", "Дом", "Кв.", "Причина", "Дата обработки", "Где находится", "Примечание", "БДФЛ"}),
#"Измененный тип" = Table.TransformColumnTypes(#"Развернутый элемент Data",{{"Когда принято", type date}, {"Дата обработки", type date}, {"Name", type text}, {"№", type text}, {"Статус", type text}, {"ФИО", type text}, {"Улица", type text}, {"Дом", type text}, {"Кв.", type text}, {"Где находится", type text}, {"Примечание", type text}, {"БДФЛ", type text}}),
#"Обрезанный текст" = Table.TransformColumns(Table.TransformColumnTypes(#"Измененный тип", {{"Когда принято", type text}, {"Дата обработки", type text}}, "ru-RU"),{{"Name", Text.Trim, type text}, {"№", Text.Trim, type text}, {"Статус", Text.Trim, type text}, {"Когда принято", Text.Trim, type text}, {"ФИО", Text.Trim, type text}, {"Улица", Text.Trim, type text}, {"Дом", Text.Trim, type text}, {"Кв.", Text.Trim, type text}, {"Причина", Text.Trim, type text}, {"Дата обработки", Text.Trim, type text}, {"Где находится", Text.Trim, type text}, {"Примечание", Text.Trim, type text}, {"БДФЛ", Text.Trim, type text}}),
#"Текст в верхнем регистре" = Table.TransformColumns(#"Обрезанный текст",{{"БДФЛ", Text.Upper, type text}, {"Примечание", Text.Upper, type text}, {"Где находится", Text.Upper, type text}, {"Дата обработки", Text.Upper, type text}, {"Причина", Text.Upper, type text}, {"Кв.", Text.Upper, type text}, {"Дом", Text.Upper, type text}, {"Улица", Text.Upper, type text}, {"ФИО", Text.Upper, type text}, {"Когда принято", Text.Upper, type text}, {"Статус", Text.Upper, type text}, {"Name", Text.Upper, type text}}),
#"Удалены пустые строки" = Table.Group(#"Текст в верхнем регистре", {"Name"}, {{"Таб", each Table.SelectRows(Table.RemoveColumns(_, {"Name"}), each not List.IsEmpty(List.RemoveMatchingItems(Record.FieldValues(_), {"", null}))), type table}}),
#"Развернутый элемент Таб" = Table.ExpandTableColumn(#"Удалены пустые строки", "Таб", {"№", "Статус", "Когда принято", "ФИО", "Улица", "Дом", "Кв.", "Причина", "Дата обработки", "Где находится", "Примечание", "БДФЛ"}, {"№", "Статус", "Когда принято", "ФИО", "Улица", "Дом", "Кв.", "Причина", "Дата обработки", "Где находится", "Примечание", "БДФЛ"})
in
#"Развернутый элемент Таб" |