Страницы: 1
RSS
Функция ЛЕВСИМВ в Power Query, Не могу найти функцию ЛЕВСИМВ
 
Добрый день уважаемы знатоки!

Подскажите пожалуйста где мне искать функцию левсимв в Power Query и как ее применить. Например мне у  меня в столбце данные идут вот так М22092017, а мне нужно чтобы в соседнем столбце получилось 22.09.2017 Буду признателен если подскажете формулу.
 
Доброе время суток.
Справочник по функциям работы с текстом, аналог
Успехов.
 
Можно так еще, но это длинно :)
Код
let
    Источник = {"М22092017"},
    #"Преобразовано в таблицу" = Table.FromList(Источник, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
    #"Вставленные последние символы" = Table.AddColumn(#"Преобразовано в таблицу", "Последние символы", each Text.End([Column1], 8), type text),
    #"Вставленные первые символы" = Table.AddColumn(#"Вставленные последние символы", "Первые символы", each Text.Start([Последние символы], 2), type text),
    #"Переименованные столбцы" = Table.RenameColumns(#"Вставленные первые символы",{{"Первые символы", "День"}}),
    #"Вставленный диапазон текста" = Table.AddColumn(#"Переименованные столбцы", "Диапазон текста", each Text.Middle([Последние символы], 2, 2), type text),
    #"Переименованные столбцы1" = Table.RenameColumns(#"Вставленный диапазон текста",{{"Диапазон текста", "Месяц"}}),
    #"Вставленные последние символы1" = Table.AddColumn(#"Переименованные столбцы1", "Последние символы.1", each Text.End([Последние символы], 4), type text),
    #"Переименованные столбцы2" = Table.RenameColumns(#"Вставленные последние символы1",{{"Последние символы.1", "Год"}}),
    #"Добавлен пользовательский объект" = Table.AddColumn(#"Переименованные столбцы2", "Дата", each [День]&"-"&[Месяц]&"-"&[Год]),
    #"Измененный тип" = Table.TransformColumnTypes(#"Добавлен пользовательский объект",{{"Дата", type date}})
in
    #"Измененный тип"
 
Уважаемый Андрей и Илья!

Спасибо большое за ответ. Не ожидал что будет такая длинная формула. Постараюсь применить его на своем примере.
 
У меня не формула, а просто мышкоклацание прописано, в PQ создайте пустой запрос и вставьте мой код => увидите пошаговые действия. проблема (для меня) в том что у Вас разделителя нету к примеру "29,09,2017"
Изменено: Илья Демид - 29.09.2017 13:11:34
 
Действительно, лучше для такого формата функцию написать, а её использовать для преобразования
Код
let
    ToDate = (txt as text) as date =>
    let
        txtLen = Text.Length(txt),
        toISO = Text.End(txt, 4) & "-" & Text.Range(txt, txtLen - 6, 2) & "-" & Text.Range(txt, txtLen - 8, 2)
    in Date.From(toISO),
    test = ToDate("M23092017")
in
    test
 
Андрей спасибо большое, Ваш вариант наверное более приемлем для меня. Он короче.
 
Андрей VG, Спасибо , теперь буду знать как не создавать функцию отдельно :)
Страницы: 1
Читают тему
Наверх