I have two columns such as:
a 1 b 2 c
and I need to combine them like:
a 1 a 2 b 1 b 2 c 1 c 2
Is it possible with a formula?
Web Applications Stack Exchange is a question and answer site for power users of web applications. It only takes a minute to sign up.Sign up to join this community
Although this is a special case of In a Google Spreadsheet, show all combinations for a selection of columns I think it's good to have a simpler answer specifically for the case of two columns. The technical term is "Cartesian product of two sets".
I use the same method as Rubén, which requires a character that does not appear in the column entries. Rubén used comma in his example. I prefer something more exotic, e.g.
char(9999), which is a pencil: ✏.
Here are the formulas for joining columns A and B in a Cartesian product:
In cell C1:
=transpose(split(join("", arrayformula(rept(filter(A1:A, len(A1:A))&char(9999), counta(B1:B)))), char(9999)))
In cell D1:
=transpose(split(rept(join(char(9999), filter(B1:B, len(B1:B)))&char(9999), counta(A1:A)), char(9999)))
The formula in C:
The formula in D: