С Новым годом! Форум программистов, компьютерный форум, киберфорум
MS Office Excel
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 24.10.2016
Сообщений: 6
1

Поиск слова в ячейке - MS Excel

24.10.2016, 23:15. Показов 1450. Ответов 12
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый вечер.
Помогите решить задачу. Нужно находить слово в ячейке и показывать его. Искомых слов может быть 15-20.
На форуме нашел формулу:
=ЕСЛИ(ЕЧИСЛО(ПОИСК("*";A2));"*" - не подходит поскольку имеет ограничение по количеству условий.
Пример во вложении. Из этого текста нужно отобрать слова: MATRIX,Россия, СИБРТЕХ
Вложения
Тип файла: xlsx Пример.xlsx (8.7 Кб, 10 просмотров)
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
24.10.2016, 23:15
Ответы с готовыми решениями:

Поиск в ячейке слова и вставка соответствующего слова в соседнюю ячейку
Привет всем В общем пример: В экселе есть строка "2423-423423342 Proliant DL380R03" и рядом в...

Определение первого слова в ячейке Excel
Есть более 60 000 записей с наименованием продукции, необходимо разбить эти записи на группы....

Поиск таблицы в ячейке MS Excel
Доброго дня всем! Друзья, столкнулся с довольно странной проблемой. Организовываю одновременную...

Поиск по списку ключевых слов в столбце и копирование ключевого слова напротив в следующей ячейке
Добрый день. Уже где-то близко, но не могу корректно составить макрос для поиска по списку...

12
15153 / 6426 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
24.10.2016, 23:45 2
essencex, из примера следует, что искомое слово - последнее в ячейке и отделено символами "// ". Тогда просто
Код
=ПСТР(A3;НАЙТИ("// ";A3)+3;99)
0
0 / 0 / 0
Регистрация: 24.10.2016
Сообщений: 6
25.10.2016, 09:36  [ТС] 3
Казанский, спасибо, Ваша формула отлично подошла к примеру, но есть еще вводные ))
В редактируемом файле попадается много ячеек с не много другим содержимым.
Пример во вложении.
Вложения
Тип файла: xlsx пример.xlsx (9.4 Кб, 4 просмотров)
0
2904 / 1718 / 705
Регистрация: 04.09.2015
Сообщений: 3,445
25.10.2016, 10:14 4
Не совсем понял что нужно, сделал две формулы
Код
=СЖПРОБЕЛЫ(ЛЕВБ(ЗАМЕНИТЬ(A2;1;ПОИСК("/";A2)+1;);ПОИСК("?/";ЗАМЕНИТЬ(A2;1;ПОИСК("/";A2)+1;)&"/")))
=ПОДСТАВИТЬ(СЖПРОБЕЛЫ(ПОДСТАВИТЬ(ПСТР(A2;ПОИСК("//";A2);99);"//";" "));" ";", ")
См. файл.
Вложения
Тип файла: xlsx пример_01.xlsx (10.0 Кб, 3 просмотров)
0
0 / 0 / 0
Регистрация: 24.10.2016
Сообщений: 6
25.10.2016, 11:50  [ТС] 5
AlexM, спасибо огромное, первая формула то что надо!

Добавлено через 30 минут
Блин, далеко не во всех строчках подошла первая формула:
1. Есть строки с данными типа "Набор бит и головок торцевых ,1/4", магнитный адаптер, сталь S2 пластиковый кейс, 26 предм.//GROSS" - по формуле выводится - ", магнитный адаптер, сталь S2 пластиковый кейс, 26 предм.
2. Есть строки с данными типа "Набор бит, сталь S2, 12 шт, встроенный магнитный адаптер, в пласт. боксе// MATRIX MASTER" - по формуле выводится - MATRIX MASTER, а нужно MATRIX
Тут наверное одной формулой не обойтись?
В идеале в формуле нужно прописать конкретные слова (MATRIX,Россия, СИБРТЕХ...), которые она найдет и выведет в отдельном столбике, на подобии этой формулы - =ЕСЛИ(ЕЧИСЛО(ПОИСК("*";A2));"*")

Добавлено через 26 минут
Также потребуется найти слово MTX, а вывести MATRIX
0
15153 / 6426 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
25.10.2016, 11:50 6
Лучший ответ Сообщение было отмечено essencex как решение

Решение

essencex, формула массива (вводится нажатием Ctrl+Shift+Enter, отображается в фигурных скобках)
Код
=ИНДЕКС($B$8:$B$10;ПОИСКПОЗ(МИН(ЕСЛИОШИБКА(ПОИСК($B$8:$B$10;A2);""));ПОИСК($B$8:$B$10;A2)))
В В8:В10 - список слов, лучше оформить как именованный диапазон и вынести на другой лист.
Можно и в формуле прописать, но ИМХО неудобно:
Код
=ИНДЕКС({"MATRIX":"Россия":"СИБРТЕХ"};ПОИСКПОЗ(МИН(ЕСЛИОШИБКА(ПОИСК({"MATRIX":"Россия":"СИБРТЕХ"};A2);""));ПОИСК({"MATRIX":"Россия":"СИБРТЕХ"};A2)))
Вложения
Тип файла: xlsx пример (73).xlsx (9.7 Кб, 9 просмотров)
1
15153 / 6426 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
25.10.2016, 12:10 7
Цитата Сообщение от essencex Посмотреть сообщение
Добавлено через 26 минут
Также потребуется найти слово MTX, а вывести MATRIX
Тогда без таблицы соответствия точно не обойтись. И старайтесь объявлять все "хотелки" сразу и выкладывать пример со всеми вариантами.
0
0 / 0 / 0
Регистрация: 24.10.2016
Сообщений: 6
25.10.2016, 12:20  [ТС] 8
Казанский, спасибо, работает, а "хотелки" к сожалению всплывают по ходу ковыряния данных , на первый взгляд вроде все одинаковые, по факту получается не так )

Подскажите, как сделать таблицу соответствия для условия - "найти слово MTX, а вывести MATRIX"?
0
15153 / 6426 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
25.10.2016, 12:38 9
essencex, без усложнения формулы, именованные диапазоны Alias и Brand на втором листе.
При добавлении строк в диапазоны лучше вставлять их между существующими строками, тогда диапазоны автоматически растягиваются.
Код
=ИНДЕКС(Brand;ПОИСКПОЗ(МИН(ЕСЛИОШИБКА(ПОИСК(Alias;A2);""));ПОИСК(Alias;A2)))
Вложения
Тип файла: xlsx пример (73).xlsx (10.4 Кб, 10 просмотров)
0
0 / 0 / 0
Регистрация: 24.10.2016
Сообщений: 6
25.10.2016, 15:30  [ТС] 10
Казанский, работает, спасибо еще раз.
Это Вы через макросы сделали?
0
15153 / 6426 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
25.10.2016, 15:41 11
essencex, нет же, формула перед Вами. В xlsx файлах макросы не живут.
0
0 / 0 / 0
Регистрация: 24.10.2016
Сообщений: 6
25.10.2016, 17:15  [ТС] 12
формулу я вижу, но не вижу в ней связи между листами
0
15153 / 6426 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
25.10.2016, 20:56 13
essencex, повторю: именованные диапазоны Alias и Brand на втором листе. См. диспетчер имен Ctrl+F3. Можете заменить на обычные ссылки типа Лист2!$A$1:$A$4.
0
25.10.2016, 20:56
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
25.10.2016, 20:56
Помогаю со студенческими работами здесь

Поиск и замена слова в файле Excel
Я задался вопросом Как лучше реализовать замену определенного слова в файле Excel. Например у нас...

Обращение к ячейке Excel.
Делаю проект в VS 2008. Язык – С#. Шаблон – книга Excel 2007. Ставлю на лист1 ...

Форматирование текста в ячейке Excel
Как отформатировать часть текста в ячейке? Например, чтобы первое слово было жирным шрифтом, а...

Как обратиться к ячейке Excel
Как обратиться к ячейке Excel? Ну и параллельно к столбцу или строке? Спасибо!


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Блоги программистов
Как перейти с Options API на Composition API в Vue.js
BasicMan 06.01.2025
Почему переход на Composition API актуален В мире современной веб-разработки фреймворк Vue. js продолжает эволюционировать, предлагая разработчикам все более совершенные инструменты для создания. . .
Архитектура современных процессоров
inter-admin 06.01.2025
Процессор (центральный процессор, ЦП) является основным вычислительным устройством компьютера, которое выполняет обработку данных и управляет работой всех остальных компонентов системы. Архитектура. . .
История создания реляционной модели баз данных, правила Кодда
Programming 06.01.2025
Предпосылки создания реляционной модели В конце 1960-х годов компьютерная индустрия столкнулась с серьезными проблемами в области управления данными. Существовавшие на тот момент модели данных -. . .
Полезные поделки на Arduino, которые можно сделать самому
raxper 06.01.2025
Arduino как платформа для творчества Arduino представляет собой удивительную платформу для технического творчества, которая открывает безграничные возможности для создания уникальных проектов. Эта. . .
Подборка решений задач на Python
IT_Exp 06.01.2025
Целью данной подборки является предоставление возможности ознакомиться с различными задачами и их решениями на Python, что может быть полезно как для начинающих, так и для опытных программистов. . . .
С чего начать программировать микроконтроллер­­ы
raxper 06.01.2025
Введение в мир микроконтроллеров Микроконтроллеры стали неотъемлемой частью современного мира, окружая нас повсюду: от простых бытовых приборов до сложных промышленных систем. Эти маленькие. . .
Из чего собрать игровой компьютер
inter-admin 06.01.2025
Сборка игрового компьютера требует особого внимания к выбору комплектующих и их совместимости. Правильно собранный игровой ПК не только обеспечивает комфортный геймплей в современных играх, но и. . .
Обновление сайта www.historian.b­y
Reglage 05.01.2025
Обещал подвести итоги 2024 года для сайта. Однако начну с того, что изменилось за неделю. Добавил краткий урок по последовательности действий при анализе вредоносных файлов и значительно улучшил урок. . .
Как использовать GraphQL в C# с HotChocolate
Programming 05.01.2025
GraphQL — это современный подход к разработке API, который позволяет клиентам запрашивать только те данные, которые им необходимы. Это делает взаимодействие с API более гибким и эффективным по. . .
Модель полного двоичного сумматора с помощью логических операций (python)
AlexSky-coder 04.01.2025
def binSum(x:list, y:list): s=^y] p=x and y for i in range(1,len(x)): s. append((x^y)^p) p=(x and y)or(p and (x or y)) return s x=list() y=list()
Это мы не проходили, это нам не задавали...(аси­­­­­­­­­­­­­­­­­­­­­­­­­­х­р­о­н­­н­­­ы­­й счётчик с управляющим сигналом зад
Hrethgir 04.01.2025
Асинхронный счётчик на сумматорах (шестиразрядный по числу диодов на плате, но наверное разрядов будет больше - восемь или шестнадцать, а диоды на старшие), так как триггеры прошли тестирование и. . .
Руководство по созданию бота для Телеграм на Python
IT_Exp 04.01.2025
Боты для Телеграм представляют собой автоматизированные программы, которые выполняют различные задачи, взаимодействуя с пользователями через интерфейс мессенджера. В данной статье мы рассмотрим,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru