Как печатать в Excel с итерацией по столбцу на основе значения (числа) - PullRequest
1 голос
/ 22 июня 2019

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

if A1 = "ABC" and B1 = 3 then C1 = "ABC", D1 = "ABC" and E1 = "ABC".
If A1 = "ABC" and B1 = 1 then C1 = "ABC"
If A1 = "ABC" and B1 = 2 then C1 = "ABC" and D1 = "ABC"

Я еще ничего не пробовал, у меня есть только логика.

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

Ожидаемый результат - это то, что описано выше.

Спасибо

Ответы [ 2 ]

2 голосов
/ 22 июня 2019

Excel

В ячейке C1:

=IF(COLUMN(A1)<=$B1,$A1,"")

Перетаскивайте вправо, пока не достигнете максимального значения, на которое вы рассчитываете B1

enter image description here

Таблицы Google

В ячейке C1:

=ARRAYFORMULA(IF((COLUMN(C1:KN1)-2)<=B1,A1,""))

Измените KN1 на тот столбец, который будет максимальным, и введите.

enter image description here

0 голосов
/ 22 июня 2019

Вы можете сделать это за один раз с Google листов:

=ArrayFormula(if(column(C1:indirect(address(counta(A:A),max(B:B)+2)))>B:B+2,"",A:A))

enter image description here

Там также

=ArrayFormula(if(A:A="","",split(rept(A:A&"|",B:B),"|")))

, но это не более 50 тыс. Символов в строке.

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