Google-sheets – Combining columns horizontally with an arrayformula

formulasgoogle sheetsworksheet-function

I need to join columns with a formula (not a script) in Google Sheets in a different way than others I've found–here is my original data, supposing that the Avengers train by playing racquetball:

Full Name   North Court   Middle Court   South Court   Reserved Court 
---------   -----------   ------------   -----------   --------------
Ironman     Tues 4:00PM                                North Court
Hulk                      Tues 5:00PM                  Middle Court
Thor                                     Tues 5:00PM   South Court
Hawkeye                   Tues 6:00PM                  Middle Court
Antman                                   Tues 4:00PM   South Court
Spiderman                 Wed  5:00PM                  Middle Court
Captain Am  Wed  5:00PM                                North Court

I need to combine this data horizontally as follows:

Full Name   Reserved Time   Reserved Court 
---------   -------------   --------------
Ironman     Tues 4:00PM     North Court
Hulk        Tues 5:00PM     Middle Court
Thor        Tues 5:00PM     South Court
Hawkeye     Tues 6:00PM     Middle Court
Antman      Tues 4:00PM     South Court
Spiderman   Wed  5:00PM     Middle Court
Captain Am  Wed  5:00PM     North Court

I can achieve this on one row with the following formula:

=split(join(";",'Form Responses'!C2:G2),";")

However, I can't figure out how to make this work with an arrayformula or filter. I can't use a copydown–I need one formula/function in one cell like an arrayformula to display data in columns A through E on Sheet1 into columns A through C on Sheet2.

Best Answer

Assuming the columns you have are C-G, entering

=arrayformula({C2:C, D2:D & E2:E & F2:F, G2:G})

in the cell H2 will have the desired effect. The arrayformula indicates that in every row, one should have three entries: one from C, one is concatenation of D,E,F, and the last from G.