Как объединить значения ячеек с разделителями из неопределенного числа ячеек? - PullRequest
0 голосов
/ 29 января 2020

У меня есть электронная таблица (экспортированная из базы данных, поэтому я застрял в указанном формате вывода) с четырнадцатью столбцами, чтобы указать, какая из четырнадцати колод была проверена. (И да, числа не сохраняются как числа.) Spreadsheet columns with deck numbers

Я хотел бы объединить их все в одну ячейку с номерами колод, разделенными запятыми. Обычно я просто использую серию &", "& элементов, но, конечно, это не сработает, когда количество колоды не определено. Я мог бы также использовать серию IF функций, но это будет довольно громоздко.

В качестве примера, я бы хотел, чтобы верхняя строка на изображении была обобщена как "1, 2, 3 , 4, 5, 6 "вместо" 1, 2, 3, 4, 5, 6,,,,,,,, "...

Есть ли более простой, легкий и / или лучший способ делать это?

Ответы [ 2 ]

1 голос
/ 30 января 2020

В AA2, формула скопирована:

=SUBSTITUTE(TRIM(N2&" "&O2&" "&P2&" "&Q2&" "&R2&" "&S2&" "&T2&" "&U2&" "&V2&" "&W2&" "&X2&" "&Y2&" "&Z2)," ",", ")

enter image description here

1 голос
/ 29 января 2020

Есть комментарии, предлагающие TEXTJOIN. Однако вы также можете сделать это с помощью CONCAT, COLUMNS, LEFT и немного мощности формул массива. (CTRL + SHIFT + ENTER)

= LEFT(CONCAT(A2:J2 & ","), ((COLUMNS(A2:J2) - SUM(1 * (A2:J2 = ""))) * 2) - 1)

Где AJ: J2 - строка, которую вы пытаетесь разделить запятой.

Краткое объяснение:

  1. Объединить каждую ячейку с ",". Затем объедините все их вместе.
  2. Получите общее количество столбцов в строке и вычтите количество пустых столбцов.
  3. Умножьте это число на 2, чтобы получить запятые, и вычтите один, чтобы удалить последний.
  4. Возьмите подстроку до количества символов, определенного в 3.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...