Excel - Fórmula de Matriz para pular as células vazias

Eu tenho uma fórmula de matriz para preencher a célula quando ele contém texto, mas eu quero que ele ignore a célula se estiver em branco e vá para a próxima. O problema que estou tendo é que ele não faz isso na ordem que eu tenho, por exemplo:

Faixa é

-A
-(BLANK CELL)
-(BLANK CELL)
-D
-E
-F
-(BLANK CELL)
-H
-(BLANK CELL)

Resultado da fórmula

-A
-E
-F
-H

Está pulando as células que contêm letras. ALGUÉM PODE AJUDAR?

FÓRMULA:

{=IF(ISERROR(SMALL(IF(B4:$B$12<>"",ROW(B4:$B$12)),ROW(B4:$B$12)-3)),"",INDEX(B4:$B$12,MATCH(SMALL(IF(B4:$B$12<>"",ROW(B4:$B$12)),ROW(B4:$B$12)-3),IF(B4:$B$12<>"",ROW(B4:$B$12)),0)))}

questionAnswers(2)

yourAnswerToTheQuestion