Есть ли способ использовать TEXTJOIN и увеличивать разделитель? - PullRequest
0 голосов
/ 31 марта 2020

У меня есть несколько ячеек, которые я хочу объединить в одном URL. Первая часть относительно проста в использовании TEXTJOIN, потому что разделитель всегда один и тот же. Вторая часть сложнее. Параметры постепенно увеличиваются, и есть вероятность, что некоторые из них могут быть пропущены. Вот код, с которого я начал, где все прописано индивидуально.

=$C$1&IF(ISNUMBER(SEARCH("~?",$C$1)),"&","?")&IF($C$3<>"","cm_mmc="&$C$3,"")&IF($C$4<>"","-_-"&$C$4,"")&IF($C$5<>"","-_-"&$C$5,"")&IF($C$6<>"","-_-"&$C$6,"")&IF($C$7<>"","&a1="&$C$7,"")&IF($C$8<>"","&a2="&$C$8,"")&IF($C$9<>"","&a3="&$C$9,"")&IF($C$10<>"","&a4="&$C$10,"")

Мне удалось упростить первую часть до этого.

=$C$1&IF(ISNUMBER(SEARCH("~?",$C$1)),"&","?")&"cm_mmc="&TEXTJOIN("-_-",TRUE,$C$3:$C$6)&IF($C$7<>"","&a1="&$C$7,"")&IF($C$8<>"","&a2="&$C$8,"")&IF($C$9<>"","&a3="&$C$9,"")&IF($C$10<>"","&a4="&$C$10,"")

Что мне нужно выяснить, так это как использовать TEXTJOIN, чтобы продолжить добавление ячеек, но увеличить этот разделитель (a1, a2, a3, ...), даже если один из параметров не указан.

Можно ли это сделать?

1 Ответ

0 голосов
/ 31 марта 2020

последняя часть может быть выполнена:

"&a"&TEXTJOIN("&a",TRUE,IF($C$7:$C$10<>"",ROW($1:$4)&"="&$C$7:$C$10,""))

ROW($1:$4) помещает правильное число в последовательность, чтобы количество строк соответствовало количеству ячеек, которые нужно объединить.

итак:

=$C$1&IF(ISNUMBER(SEARCH("~?",$C$1)),"&","?")&"cm_mmc="&=TEXTJOIN("-_-",TRUE,$C$3:$C$6)&"&a"&TEXTJOIN("&a",TRUE,IF($C$7:$C$10<>"",ROW($1:$4)&"="&$C$7:$C$10,""))

enter image description here

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