Страницы: 1
RSS
Замена похожих значений (различаются регистрами, пробелами)
 
Добрый день!
Есть значения в ячейках, которые схожи в написании, но отличаются регистрами, порядком слов, точками, пробелами...(Пример в файле "Пример")
Возможно ли сделать так, чтобы все схожие названия заменились на одно название из заданного диапазона (Столбец "Номенклатура")?
Через поиск не нашла, но возможно не понимаю как искать..

Заранее спасибо всем откликнувшимся!
 
 
макросом:
... собрать словарь замен, пройти по массиву столбца А, сверяя со словарём замен составные части значения ячейки, произвести замену...    
CreateObject("Scripting.Dictionary") в помощь
чтобы не гадать на кофейной гуще, кто вам отвечает и после этого не совершать кучу ошибок - обратитесь к собеседнику на ВЫ - ответ на ваш вопрос получите - а остальное вас не касается (п.п.п. на форумах)
 
как понять, что "Груш спелая  ." - это "Груша спелая"? Если смотреть только по началам слов, то можно случайно совместить "Лист бумажный" и "Листовой металл"
F1 творит чудеса
 
в общем, код для Power Query, который не объединяет "Груш" и "Груша", но чистит от точек, пробелов и регистров:
Код
let
    Source = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"вид товара", type text}, {"цена", Int64.Type}}),
    #"Replaced Value" = Table.ReplaceValue(#"Changed Type",".","",Replacer.ReplaceText,{"вид товара"}),
    #"Capitalized Each Word1" = Table.TransformColumns(#"Replaced Value",{{"вид товара", Text.Proper}}),
    fnReshapeText = (text)=>
        let
            split = Text.Split(text, " "),
            clean = List.Select(split, each _ <> ""),
            sort = List.Sort(clean)
        in
            Text.Combine(sort," "),
    #"Trimmed Text" = Table.TransformColumns(#"Capitalized Each Word1",{{"вид товара", each fnReshapeText(_)}}),
    #"Removed Duplicates" = Table.Distinct(#"Trimmed Text")
in
    #"Removed Duplicates"
Изменено: Максим Зеленский - 19.05.2017 21:27:12
F1 творит чудеса
 
Спасибо большое, буду пробовать!
Страницы: 1
Наверх