Найти слова и скопировать в следующий столбец в Excel
Я хотел бы найти и скопировать текст в следующий столбец в Excel. У меня есть столбец A с текстом или предложениями. Я хочу найти конкретное слово и скопировать это слово в следующий столбец, который является столбцом B, только если это слово доступно в тексте столбца A.
У меня есть это решение для поиска и копирования одиночного слова, но я хочу применить это для множественного поиска и копирования разных слов:
=IF(ISNUMBER(SEARCH("processes", A4)), MID(A4, SEARCH("processes", A4), 9), "")
Пример:
- Excel 2016: ошибка функции FLOOR.MATH в сочетании с MAX
- LINEST дает #VALUE! ошибка для некоторых данных
- Создайте отсортированный список из несортированного списка в excel, используя if и array
- Поиск последнего появления дублированного элемента в диапазоне (столбец)
- Подсчитывать дни указанного месяца без дубликатов?
Предположим, что столбец А содержит текст:
"Execution of procedure and processes". "All Procedures are correctly updated" "Processes are going smoothly".
Я хочу искать слово как "Processes and procedure"
и должен копировать в столбце B (ячейка 1) «ТОЛЬКО ЕСЛИ» в тексте processes
либо procedure
либо procedure
.
Не могли бы вы помочь мне в этом?
- Как выбрать все значения в столбце по номеру столбца в excel
- Константа константы в Формуле Excel
- Среднее значение для нескольких критериев в одном столбце
- Как найти все непустые ячейки в массиве ячеек?
- Результаты футбола: счет выигрывает, когда 4 или более голов забито определенной командой
- формулы if
- как правильно вставить формулу excel
- Excel заполняет данные на основе данных, выбранных в другом столбце
Если вам нужно только вернуть одно из этих слов, вы можете использовать:
=LOOKUP(2,1/ISNUMBER(SEARCH({"Processes","Procedures"},A4)),{"Processes","Procedures"})
Или вы можете, например, поместить поисковые слова в ячейки:
C1: Processes D1: Procedures =LOOKUP(2,1/ISNUMBER(SEARCH($C$1:$D$1,A4)),$C$1:$D$1)
Формула возвращает ошибку, если ни одно слово не существует; и его можно расширить до любого количества слов. Если вам не нравится сообщение об ошибке, вы можете обернуть это в функции IFERROR и вернуть то, что вам нравится.
Функция SEARCH с массивом для find_text возвращает массив либо числа, либо #VALUE! Функция ISNUMBER вернет массив TRUE или FALSE. Операция деления (1 / ISNUMBER) вернет массив из 1 или # DIV / 0! LOOKUP с lookup_value из 2 найдет последнее местоположение числа, которое равно или меньше 2; и возвратите из result_vector элемент в том же положении.
Если вам нужно вернуть оба слова, и они могут быть в разных ячейках, введите эту формулу массива и заполните право на количество слов в вашем списке поиска:
например:
=IFERROR(INDEX(IF(SEARCH($C$1:$D$1,$A4),$C$1:$D$1,""),1,COLUMNS($A:A)),"")
Чтобы ввести массив, введите формулу после ввода формулы в ячейку или панель формул, удерживая нажатой клавишу ctrl-shift , нажав кнопку enter . Если вы сделали это правильно, Excel поместит фигурные скобки {…} вокруг формулы.
EDIT: добавлен экранный снимок
Я бы сказал, что в ваши формулы не нужно указывать значения. Формула, которая должна возвращаться по вашему запросу, приведена ниже. Поместите формулу в B1 и перетащите вниз.
=IF(OR(NOT(ISERR(FIND("processes",LOWER($A1)))),NOT(ISERR(FIND("procedure",LOWER($A1))))), IF(NOT(ISERR(FIND("processes and procedure",LOWER($A1)))),"processes and procedure",""),"")
Эта формула проверяет, можно ли найти «процессы» или «процедуру» в строке в столбце A , если это так, то будет проверяться, происходит ли строка «процессы и процедура» (чего нет в вашем примере!). и если это произойдет, оно вернет «процессы и процедуры»,
Возвращаясь к исходному моменту, я предлагаю положить "process"
в ячейку C1 , "procedure"
в ячейку D1 и "processes and procedure"
в ячейку E1, формула будет выглядеть так:
=IF(OR(NOT(ISERR(FIND(C1,LOWER($A1)))),NOT(ISERR(FIND(D1,LOWER($A1))))), IF(NOT(ISERR(FIND(E1,LOWER($A1)))),E1,""),"")
Таким образом, вы можете редактировать столбцы C, D и E, и ваши формулы будут пересчитываться
Протестируйте эти формулы со значением, например "Execution of processes and procedures"
в ячейке A1
ОБНОВЛЕНИЕ: это то, как должна выглядеть ваша установка, согласно моему примеру.
ОБНОВЛЕНИЕ: поскольку вы не видите изображение, по существу убедитесь, что вы настроили столбцы A, C, D и E следующим образом, а затем вставьте формулу в столбец B
ACDE Execution of processes and procedures processes procedures processes and procedures Execution of procedures and processes processes procedures processes and procedures