Преобразование массива в строку с Формулой Excel, это возможно?

преобразовать массив в строку с Формулой в Excel, это возможно?

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

например у меня следующий массив:{ "a","b"} Я хотел бы, чтобы моя формула выводила ab

Origianlly я думал об использовании CONCATENATE({"a","b"}) но это привело к a

14
задан sgp667
06.01.2023 11:31 Количество просмотров материала 3027
Распечатать страницу

1 ответ

Это может быть сделано с помощью формул, однако, catting список из более чем 1000 строк, кажется, вероятно, превысит пределы excel для строк или дать громоздкий результат. Будьте осторожны.

  • сделайте скрытый лист с именем зона или любое другое имя, которое вы хотите.
  • Если именованный диапазон, который вы получаете, называется "x", то в столбце a поместите" Count", а затем в ячейке под ним введите =counta(x) ' это дает нам размер массива.
  • назовите ячейку с фактическим номером "Cnt"
  • затем в столбце c, начиная с c3 введите в "данные" это заголовок
  • при c4 enter =index (x,1)
  • на c5 и расширьте прошлый размер возможного диапазона =+IF (ROW()>Cnt+3,"", C4&INDEX(x, ROW()-3))

  • на d2 введите "ответ", а на d3 введите = + OFFSET ($C$3,Cnt,0)

  • назовите ячейку d3 как Ans, и вы можете использовать ее там, где вам нужно. возможный мод добавить", " как c4&", " & индекс (x, рядок()-3)) использовать функцию iferror вместо if (строка ()>cnt+3 для маскировки ошибок если скопировали формулу в 2000 ячеек, есть тест, если (cnt>2000, "ошибка с именем диапазона слишком большой - вызов John Doe",""), чтобы вызвать сообщение об ошибке, чтобы появиться, если недооценивается размер именованного диапазона.
1
отвечен bvaughn 2023-01-07 19:19

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх