
В Excel у меня есть ячейки, содержащие разнообразную информацию, разбитую на абзацы.
Поскольку это всего лишь отрывок из фактического исходного материала, идеальным был бы способ отформатировать его так, чтобы достичь того, что я ищу. (учтите, что необходимая информация указана в скобках)
решение1
Если у вас есть Excel 365, вы можете объединить функции IF
, IFERROR
, TEXTAFTER
, TEXTBEFORE
и TEXTJOIN
, CHAR
чтобы получить результат. Предполагая, что ваши данные находятся в столбцах A, попробуйте следующее в столбце B:
=TEXTJOIN(CHAR(10),TRUE,IFERROR(IF(LEFT(A1:A22,1)="[",TEXTBEFORE(TEXTAFTER(A1:A22,"_",1),"_",1),""),""))
IF
: для проверки того, что первый символ —[
. Если да, извлеките слово с помощью функций TEXTAFTER и TEXTBOREIFERROR
: В случае ошибки показывать пустую строкуCHAR(10)
: вставляет новую строку между ячейками/словамиTEXTJOIN
: объединяет строки/слова и игнорирует пустые ячейки