Скопируйте значения в другой больший столбец в известных ячейках - PullRequest
0 голосов
/ 13 февраля 2020

Я новичок в «сложных» вещах с Excel, я не могу найти то, что я ищу. Я пробовал вещи с индексом, соответствием, строкой.

Метки ("x") необходимо заменить с text1 до text5. Количество текстов (столбец B) может варьироваться, но они всегда равны количеству меток («x») в столбце A. Значение «x» и «FALSE» не имеет значения. Порядок отметок в столбце А. может меняться.

 columnA       | columnB      | ColumnC (result)
   "FALSE"     |    "text1"   | "FALSE"
   "FALSE"     |    "text2"   | "FALSE"
   x           |    "text3"   | "text1"
   x           |    "text4"   | "text2"
   x           |    "text5"   | "text3"
   "FALSE"     |              | "FALSE"
   x           |              | "text4"
   "FALSE"     |              | "FALSE"
   x           |              | "text5"

Можно ли это сделать с формулой Excel или с vba?

Спасибо,

[enter image description here]

1 Ответ

0 голосов
/ 13 февраля 2020

Попробуйте следующее в C1 и скопируйте вниз. Предполагается, что у вас нет строк заголовка

=IF(A1<>"x",A1,INDEX(B:B,COUNTIF($A$1:A1,"x")))

POC

ОБНОВЛЕНИЕ для строк заголовка

=IF(A1<>"x",A1,INDEX(B:B,COUNTIF($A$5:A5,"x")+4))

or

=IF(A1<>"x",A1,INDEX(B:B,COUNTIF($A$5:A5,"x")+ROW($A$4))
'where A4 is a cell in the last row of your header row.

Поместите выше в строке 5 и, при необходимости, скопируйте вниз.

...