Страницы: 1
RSS
Как в PQ изменить формат даты с дата/месяц/год на месяц/год?
 
Добрый день.
В приложенном файле в PQ на шаге "Извлеченный месяц" столкнулся с проблемой, что не могу изменить формат даты например с 01/01/2020 на 01/2020.
Как это сделать ?
Быстрее молнии, быстрее ветра, быстрее калькулятора
 
Доброе время суток
Вариант
Код
let
    Source = Excel.CurrentWorkbook(){[Name="Таблица7"]}[Content],
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"дата", type date}, {"ОЗМ", type text}, {"кол-во", Int64.Type}}),
    #"Sorted Rows" = Table.Sort(#"Changed Type",{{"дата", Order.Ascending}, {"ОЗМ", Order.Ascending}}),
    #"Added Custom" = Table.AddColumn(#"Sorted Rows", "Pivot", each Date.MonthName([дата]) & " " & Text.From(Date.Year([дата]))),
    #"Removed Columns" = Table.RemoveColumns(#"Added Custom",{"дата"}),
    #"Pivoted Column" = Table.Pivot(#"Removed Columns", List.Distinct(#"Removed Columns"[Pivot]), "Pivot", "кол-во", List.Sum)
in
    #"Pivoted Column"
 
Цитата
Borrusale написал:
изменить формат даты
никак, разве что можно превратить в текст
Код
= Table.TransformColumns(#"Измененный тип",{"дата", each Text.From(Date.Month(_))&"/"&Text.From(Date.Year(_))})
Соблюдение правил форума не освобождает от модераторского произвола
 
Спасибо.
Еще свой вариант получился. Создание по столбику "Дата" дублей столбиков: год, месяц. С их объединением.
Код
let
    Источник = Excel.CurrentWorkbook(){[Name="Таблица7"]}[Content],
    #"Дублированный столбец для месяца" = Table.DuplicateColumn(Источник, "дата", "Копия дата"),
    #"Дублированный столбец для года" = Table.DuplicateColumn(#"Дублированный столбец для месяца", "Копия дата", "Копия Копия дата"),
    #"Извлеченный месяц" = Table.TransformColumns(#"Дублированный столбец для года",{{"Копия дата", Date.Month, Int64.Type}}),
    #"Извлеченный год" = Table.TransformColumns(#"Извлеченный месяц",{{"Копия Копия дата", Date.Year, Int64.Type}}),
    #"Удаление столбца дата" = Table.RemoveColumns(#"Извлеченный год",{"дата"}),
    #"Объединенные столбцы дублей месяц год" = Table.CombineColumns(Table.TransformColumnTypes(#"Удаление столбца дата", {{"Копия дата", type text}, {"Копия Копия дата", type text}}, "ru-RU"),{"Копия дата", "Копия Копия дата"},Combiner.CombineTextByDelimiter(";", QuoteStyle.None),"Сведено"),
    #"Сортированные строки" = Table.Sort(#"Объединенные столбцы дублей месяц год",{{"Сведено", Order.Ascending}}),
    #"Сведенный столбец" = Table.Pivot(#"Сортированные строки", List.Distinct(#"Сортированные строки"[Сведено]), "Сведено", "кол-во", List.Sum)
in
    #"Сведенный столбец"
Быстрее молнии, быстрее ветра, быстрее калькулятора
 
Цитата
buchlotnik написал:
разве что можно превратить в текст
Код
let
    Source = Excel.CurrentWorkbook(){[Name="Таблица7"]}[Content],
    Transform = Table.TransformColumns(Source, {"дата", each Date.ToText(Date.From (_) , "MM/yyyy", "en-EN")})
in
    Transform
Изменено: DrillPipe - 09.08.2020 13:21:31
 
DrillPipe,Спасибо! Круто! Получается форматы ячейки листа применимы и в PQ.
Быстрее молнии, быстрее ветра, быстрее калькулятора
Страницы: 1
Наверх