Как использовать VLOOKUP для разделения многозначной ячейки на отдельные строки? - PullRequest
0 голосов
/ 31 октября 2019

Как видно из названия, как вы разбиваете это enter image description here

на

enter image description here

Ответы [ 2 ]

2 голосов
/ 31 октября 2019

Не знаю, откуда взялась VLOOKUP в вашем вопросе, но если у вас Excel 2010 или более поздняя версия, вы можете сделать это через PowerQuery

enter image description here

  • Выберите ваши данные * вкладка 1011 *
  • Data> From Table/Range
  • У вас есть заголовки, поэтому выберите соответственно

Теперь должен начаться PowerQuery,и в открытой вкладке:

  • Start tab> Split column> by delimiter
  • Очевидно, выберите запятую в качестве разделителя> Выберите Advanced и отметьте Rowвместо Column.
  • Выберите без кавычек и подтвердите.
  • Щелкните правой кнопкой мыши данные в PQ> Transform> Trim

Вот и все. Вы можете закрыть PowerQuery сейчас и сохранить изменения

enter image description here

Я бы опубликовал код M, но мой Excel на голландском языке, поэтому бесполезно.

0 голосов
/ 31 октября 2019

Если вы не имеете дело с огромным объемом данных и используете Excel 365 или более поздние версии, вы можете попробовать следующее решение.

Предположим, что ваши исходные данные находятся в диапазоне A1:A4, включая заголовок,

Выделите диапазон B1:B10, перейдите на панель формул, введите следующую формулу и подтвердите ее, нажав Ctrl + Shift + Введите вваша клавиатура:

=FILTERXML("<a><b>"&TEXTJOIN("</b><b>",,SUBSTITUTE(A1:A4,", ","</b><b>"))&"</b></a>","//b")

Demo

Если вы не хотите отображать ошибку #N/A, вы можете использовать IFERROR Формула выглядит следующим образом:

=IFERROR(formula,"")

Для логики использования функции FILTERXML вы можете прочитать эту статью: Извлечь слово поПозиция с использованием FILTERXML ()

Проблема с вышеприведенным решением состоит в том, что вам нужно выяснить, какой разумный выходной диапазон вы можете ввести для формулы массива , поэтомувесь вывод может быть отображен.


Если вы присоединились к «таинственному» инсайдерская программа из Excel, вы можете просто использовать функцию UNIQUE следующим образом, чтобы получить список (обратите внимание, что это всего лишь догадка , как яЯ не в программе, поэтому не могу проверить его).

Выделите ячейку B1, введите следующую формулу, нажмите Введите , как обычно.

=UNIQUE(formula)

И список будет разлитым автоматически в диапазоне B1:B6.

Проблема с этой формулой состоит в том, что она будет отображать дублированные значения только один раз. Используйте его с осторожностью.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...