Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/PQ заменить звездочку на null - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » PQ заменить звездочку на null (Формулы/Formulas)
PQ заменить звездочку на null
Anis625 Дата: Вторник, 07.09.2021, 10:11 | Сообщение № 1
Группа: Заблокированные
Ранг: Ветеран
Сообщений: 674
Репутация: 31 ±
Замечаний: 20% ±

Excel 2013
Добрый день, всем участникам форума!
Наверняка простое решение у этого вопроса, но в интернете не нашел решения.
Не получается удалить запросом PQ звездочки:
[vba]
Код
let
    Источник = Excel.CurrentWorkbook(){[Name="Таблица4"]}[Content],
    #"Измененный тип" = Table.TransformColumnTypes(Источник,{{"Шапка 1", type text}, {"Шапка 2", type any}}),
    #"Замененное значение" = Table.ReplaceValue(#"Измененный тип","~*","nulll",Replacer.ReplaceValue,{"Шапка 2"})
in
    #"Замененное значение"
[/vba]
Пробовал и просто "*" и так "~*" (где то в интернете видел).
 
Ответить
СообщениеДобрый день, всем участникам форума!
Наверняка простое решение у этого вопроса, но в интернете не нашел решения.
Не получается удалить запросом PQ звездочки:
[vba]
Код
let
    Источник = Excel.CurrentWorkbook(){[Name="Таблица4"]}[Content],
    #"Измененный тип" = Table.TransformColumnTypes(Источник,{{"Шапка 1", type text}, {"Шапка 2", type any}}),
    #"Замененное значение" = Table.ReplaceValue(#"Измененный тип","~*","nulll",Replacer.ReplaceValue,{"Шапка 2"})
in
    #"Замененное значение"
[/vba]
Пробовал и просто "*" и так "~*" (где то в интернете видел).

Автор - Anis625
Дата добавления - 07.09.2021 в 10:11
Anis625 Дата: Вторник, 07.09.2021, 10:18 | Сообщение № 2
Группа: Заблокированные
Ранг: Ветеран
Сообщений: 674
Репутация: 31 ±
Замечаний: 20% ±

Excel 2013
Попробовал заменить третью строку на:
[vba]
Код
Table.AddColumn(#"Измененный тип", "Пользовательская", each Text.Remove([Шапка 2],"*"))
[/vba]
звездочку убрал, но там где нет звездочек выдает ошибку
 
Ответить
СообщениеПопробовал заменить третью строку на:
[vba]
Код
Table.AddColumn(#"Измененный тип", "Пользовательская", each Text.Remove([Шапка 2],"*"))
[/vba]
звездочку убрал, но там где нет звездочек выдает ошибку

Автор - Anis625
Дата добавления - 07.09.2021 в 10:18
прохожий2019 Дата: Вторник, 07.09.2021, 10:46 | Сообщение № 3
Группа: Проверенные
Ранг: Старожил
Сообщений: 1241
Репутация: 317 ±
Замечаний: 0% ±

365 Beta Channel
как бы не ясно - вы хотите удалить звездочки или написать вместо них "null"? или значение со звездочкой должно превратиться в null? пример не помешал бы
а так - вдруг правильно:[vba]
Код
let
    from = Excel.CurrentWorkbook(){[Name="Таблица4"]}[Content],
    to = Table.ReplaceValue(from,"*","",Replacer.ReplaceText,{"Шапка 2"})
in
    to
[/vba]
 
Ответить
Сообщениекак бы не ясно - вы хотите удалить звездочки или написать вместо них "null"? или значение со звездочкой должно превратиться в null? пример не помешал бы
а так - вдруг правильно:[vba]
Код
let
    from = Excel.CurrentWorkbook(){[Name="Таблица4"]}[Content],
    to = Table.ReplaceValue(from,"*","",Replacer.ReplaceText,{"Шапка 2"})
in
    to
[/vba]

Автор - прохожий2019
Дата добавления - 07.09.2021 в 10:46
Anis625 Дата: Вторник, 07.09.2021, 10:50 | Сообщение № 4
Группа: Заблокированные
Ранг: Ветеран
Сообщений: 674
Репутация: 31 ±
Замечаний: 20% ±

Excel 2013
прохожий2019,
Почти то что нужно, в остальных ячейках выдает ошибку там где нет *
Наверно ошибку можно заменить при помощи try if ... then ... else ... правильно рассуждаю?
Спасибо за подсказку новой формулы Replacer.ReplaceText
К сообщению приложен файл: DelStar.xlsx (15.7 Kb)
 
Ответить
Сообщениепрохожий2019,
Почти то что нужно, в остальных ячейках выдает ошибку там где нет *
Наверно ошибку можно заменить при помощи try if ... then ... else ... правильно рассуждаю?
Спасибо за подсказку новой формулы Replacer.ReplaceText

Автор - Anis625
Дата добавления - 07.09.2021 в 10:50
прохожий2019 Дата: Вторник, 07.09.2021, 11:45 | Сообщение № 5
Группа: Проверенные
Ранг: Старожил
Сообщений: 1241
Репутация: 317 ±
Замечаний: 0% ±

365 Beta Channel
так предупреждать надо, что у вас не текст, а числа
[vba]
Код
let
    f=(x)=>if Value.Is(x,Text.Type) then Number.From(Text.Replace(x,"*","")) else x,

    from = Excel.CurrentWorkbook(){[Name="Таблица4"]}[Content],
    to = Table.TransformColumns(from,{"Шапка 2", f})
in
    to
[/vba]
К сообщению приложен файл: 5137948.xlsx (17.2 Kb)
 
Ответить
Сообщениетак предупреждать надо, что у вас не текст, а числа
[vba]
Код
let
    f=(x)=>if Value.Is(x,Text.Type) then Number.From(Text.Replace(x,"*","")) else x,

    from = Excel.CurrentWorkbook(){[Name="Таблица4"]}[Content],
    to = Table.TransformColumns(from,{"Шапка 2", f})
in
    to
[/vba]

Автор - прохожий2019
Дата добавления - 07.09.2021 в 11:45
Anis625 Дата: Вторник, 07.09.2021, 13:31 | Сообщение № 6
Группа: Заблокированные
Ранг: Ветеран
Сообщений: 674
Репутация: 31 ±
Замечаний: 20% ±

Excel 2013
прохожий2019,
А вот это уже нужно изучать. Спасибо Вам огромное за новое решение.
 
Ответить
Сообщениепрохожий2019,
А вот это уже нужно изучать. Спасибо Вам огромное за новое решение.

Автор - Anis625
Дата добавления - 07.09.2021 в 13:31
прохожий2019 Дата: Вторник, 07.09.2021, 14:05 | Сообщение № 7
Группа: Проверенные
Ранг: Старожил
Сообщений: 1241
Репутация: 317 ±
Замечаний: 0% ±

365 Beta Channel
нужно изучать
а вот это правильно, посмотрите ещё варианты (но вышеуказанный самый шустрый) - то же через Replace:
[vba]
Код
let
    f=(x)=>if Value.Is(x,Text.Type) then Number.From(Text.Replace(x,"*","")) else x,

    from = Excel.CurrentWorkbook(){[Name="Таблица4"]}[Content],
    to = Table.ReplaceValue(from,(x)=>x[Шапка 2],(x)=>f(x[Шапка 2]),Replacer.ReplaceValue,{"Шапка 2"})
in
    to
[/vba]или вот такой вариант чисто под эту задачу [vba]
Код
let
    f=(x)=>if Value.Is(x,Text.Type) then Expression.Evaluate(x&"1") else x,

    from = Excel.CurrentWorkbook(){[Name="Таблица4"]}[Content],
    to = Table.TransformColumns(from,{"Шапка 2", f})
in
    to
[/vba]
К сообщению приложен файл: 2863760.xlsx (18.9 Kb)
 
Ответить
Сообщение
нужно изучать
а вот это правильно, посмотрите ещё варианты (но вышеуказанный самый шустрый) - то же через Replace:
[vba]
Код
let
    f=(x)=>if Value.Is(x,Text.Type) then Number.From(Text.Replace(x,"*","")) else x,

    from = Excel.CurrentWorkbook(){[Name="Таблица4"]}[Content],
    to = Table.ReplaceValue(from,(x)=>x[Шапка 2],(x)=>f(x[Шапка 2]),Replacer.ReplaceValue,{"Шапка 2"})
in
    to
[/vba]или вот такой вариант чисто под эту задачу [vba]
Код
let
    f=(x)=>if Value.Is(x,Text.Type) then Expression.Evaluate(x&"1") else x,

    from = Excel.CurrentWorkbook(){[Name="Таблица4"]}[Content],
    to = Table.TransformColumns(from,{"Шапка 2", f})
in
    to
[/vba]

Автор - прохожий2019
Дата добавления - 07.09.2021 в 14:05
Anis625 Дата: Вторник, 07.09.2021, 14:24 | Сообщение № 8
Группа: Заблокированные
Ранг: Ветеран
Сообщений: 674
Репутация: 31 ±
Замечаний: 20% ±

Excel 2013
прохожий2019,
Крутяк. Спасибо за новые знания!!!
 
Ответить
Сообщениепрохожий2019,
Крутяк. Спасибо за новые знания!!!

Автор - Anis625
Дата добавления - 07.09.2021 в 14:24
Мир MS Excel » Вопросы и решения » Вопросы по Excel » PQ заменить звездочку на null (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!