Есть ли способ сделать это в диапазоне?
В одной строке? AFAIK Нет.
Попробуйте:
Положите =IF(B5="Yes",A7,A7+1)
в B7 и перетащите вправо.
Положите =MAX(7:7)&" match only"
в A8.
Положите =IF((ROW()-8)<=MAX($7:$7),ROW()-8,"")
в A9, затем положите =IFERROR(INDEX($3:$3,MATCH(ROW()-8,$7:$7,0)),"")
в B9 и перетащите оба вниз.
Я надеюсь, что это приближает вас к тому, что вам нужно.