Excel formula fill range formula with dynamic result

Occasional Contributor

qazzzlyt_0-1641480517533.png

A1 has formula ={"dog","cat"}, which filled B1 with "cat".

 

In A3 the formula is =CHOOSE({1,2},A1,B1), and it worked. My goal is to fill multiple cells with one cell and need dynamic result. So this one meet my goal, but I feel CHOOSE is redundant and there should be a better way.

 

So I write A5 as ={A1,B1}, but Excel does not recognize this formula. What did I do wrong here? Any suggestions with good grammar?

 

Thank you all for help.

5 Replies
Oh thanks again Sergei. How about if A1 and B1 are not in a spilled range?

@qazzzlyt 

=FILTER(1:1,1:1<>"")

 

Maybe with Filter function as shown in the attached file.

@qazzzlyt 

=A1:B1

shall work both for spill and range

@qazzzlyt 

At the risk of muddling up your cats and dogs

= IF({0,1},"dog","cat")

 is also a standard solution.  Of course. if you are up for a bit of excitement, you could always try

= LET(
    select, RANDARRAY(1,2,0,1,1),
    IF(select, "dog","cat"))