Здравствуйте. Я столкнулся с задачкой, с которой не знаю как справится, нашел частичное решение, которое работает, но не так как хотелось бы. Вот в ЭТОМ документе я создал подходящие условия, возможно у кого-то будет идея или достаточно знаний для решения данного вопроса. А то что на этом форуме такие есть - я уже несколько раз убеждался. Перехожу к сути проблемы. У меня есть прайс со списком позиций. Позиции там самые разные, искать что либо сложно. Вот и пришла идея создать страничку с формулой, которая поможет найти желаемое. Я написал для этого формулу:
Код
=ЕСЛИ(A2="";""; QUERY(F1:G;" SELECT F, G WHERE F matches '.*"&A6&".*' OR F matches '.*"&A7&".*' OR F matches '.*"&A8&".*' AND F matches '.*"&A4&".*'"))
До этого вида я дошел после решения нескольких проблем, а именно, формула зависима от регистра, по этому мне пришлось добавить дополнительные ячейки, в которых текст переходит в прописные символы, первый символ прописный и строчный, это ячейки A6, A7, A8. Далее, когда я ищу какой то ролик, я прописываю в поисковой ячейке "рол" и мне выводит список роликов с разными параметрами. Я решил добавить еще один параметр а ячейку A4, в которой указываю дополнительный параметр, например материал колеса, либо диаметр и выдача по идее должна отсеять мне варианты под запрос, но не всегда так происходит. Вот какая проблема у меня по пути: Когда я ввожу "рол", кроме РОЛиков выдает так же и поРОЛон. Все правильно, формула так и настроена, чтоб выводит все варианты, где встречается РОЛ (не имеет значения будет это в начале, середине или конце записи). Далее я вношу дополнительный параметр "3", чтоб отсеять из выдачи ненужное и что замечаю - поРОЛон отсеивает значения, оставив только те, где встречается 3, а ролики - игнорируют дополнительное условие и делают полную выдачу всех вариантов (и где есть 3 и где нет 3). Предполагаю, что причина в том, что запрос РОЛ в поролоне стоит посредине фразы, а в роликах - в начале. Формула, которая ищет только по начальному сожержимому, которая отброссит поролон - не решит проблему, так как искомое не всегда начинается именно с искомого слова, к примеру "резиновый РОЛИК 30.04". Можно ли как то поправить формулу, чтоб она работала корректно, тоесть выдавала все значения, в которых встречается значение указанное в основном запросе, и при необходимости из полученного результата оставляла только то, что содержит еще и в дополнительном запросе. Доп запрос при этом тоже может быть в любом месте названия позиции? Списибо!
Здравствуйте. Я столкнулся с задачкой, с которой не знаю как справится, нашел частичное решение, которое работает, но не так как хотелось бы. Вот в ЭТОМ документе я создал подходящие условия, возможно у кого-то будет идея или достаточно знаний для решения данного вопроса. А то что на этом форуме такие есть - я уже несколько раз убеждался. Перехожу к сути проблемы. У меня есть прайс со списком позиций. Позиции там самые разные, искать что либо сложно. Вот и пришла идея создать страничку с формулой, которая поможет найти желаемое. Я написал для этого формулу:
Код
=ЕСЛИ(A2="";""; QUERY(F1:G;" SELECT F, G WHERE F matches '.*"&A6&".*' OR F matches '.*"&A7&".*' OR F matches '.*"&A8&".*' AND F matches '.*"&A4&".*'"))
До этого вида я дошел после решения нескольких проблем, а именно, формула зависима от регистра, по этому мне пришлось добавить дополнительные ячейки, в которых текст переходит в прописные символы, первый символ прописный и строчный, это ячейки A6, A7, A8. Далее, когда я ищу какой то ролик, я прописываю в поисковой ячейке "рол" и мне выводит список роликов с разными параметрами. Я решил добавить еще один параметр а ячейку A4, в которой указываю дополнительный параметр, например материал колеса, либо диаметр и выдача по идее должна отсеять мне варианты под запрос, но не всегда так происходит. Вот какая проблема у меня по пути: Когда я ввожу "рол", кроме РОЛиков выдает так же и поРОЛон. Все правильно, формула так и настроена, чтоб выводит все варианты, где встречается РОЛ (не имеет значения будет это в начале, середине или конце записи). Далее я вношу дополнительный параметр "3", чтоб отсеять из выдачи ненужное и что замечаю - поРОЛон отсеивает значения, оставив только те, где встречается 3, а ролики - игнорируют дополнительное условие и делают полную выдачу всех вариантов (и где есть 3 и где нет 3). Предполагаю, что причина в том, что запрос РОЛ в поролоне стоит посредине фразы, а в роликах - в начале. Формула, которая ищет только по начальному сожержимому, которая отброссит поролон - не решит проблему, так как искомое не всегда начинается именно с искомого слова, к примеру "резиновый РОЛИК 30.04". Можно ли как то поправить формулу, чтоб она работала корректно, тоесть выдавала все значения, в которых встречается значение указанное в основном запросе, и при необходимости из полученного результата оставляла только то, что содержит еще и в дополнительном запросе. Доп запрос при этом тоже может быть в любом месте названия позиции? Списибо!Faraway
Сообщение отредактировал Faraway - Вторник, 27.04.2021, 12:52