I need to combine multiple columns into a single column, so:

``````one     four    seven
two     five    eight
three   six     nine
``````

Becomes:

``````one
two
three
four
five
six
seven
eight
nine
``````
-

## marked as duplicate by Rubén, ᴡᴏʀᴅs, Al E., jonsca♦Mar 7 at 0:20

That's not possible with plain old formula's. Have a look at this answer: webapps.stackexchange.com/a/39292/29140 – Jacob Jan Tuinstra Jun 4 '13 at 12:27
– batpigandme Jun 4 '13 at 12:49
@JacobJanTuinstra Unfortunately that merges sheets, not columns. – 1ndivisible Jun 4 '13 at 12:53
It works for column ranges as well. – Jacob Jan Tuinstra Jun 4 '13 at 13:02
Update: See this answer, the accepted one is for the old version of Sheets. – ᴡᴏʀᴅs Mar 6 at 16:53

Install the `VMERGE` script from the script gallery:

The script you just installed, makes it possible to combine multiple ranges into one: `=VMERGE(range1,range2, ect)`

See example file I've prepared for you to play with: VMERGE and Ranges

-
Beautiful. Much obliged. – 1ndivisible Jun 4 '13 at 13:57
At this time the Script Gallery is available only for old spreadsheets that had not being migrated yet. – Rubén May 3 '15 at 0:44
Yeah; no more VMERGE still. – Jason C Jul 18 '15 at 9:13

The following formula can be used to merge one column after another:

``````={A1:A5; M1:M5}
``````
-
+1 The principle works well for me, though something like `={A1:A3;B1:B3;C1:C3}` might have been more in keeping with the OP. – pnuts Oct 14 '14 at 19:04

If the columns are A, E, G (for example), then the following command combines them:

``````={filter(A:A, len(A:A)); filter(E:E, len(E:E)); filter(G:G, len(G:G))}
``````

Here, I first filter the columns by `len()` to remove blank cells. Then I combine the columns together.

An example combining columns in different sheets:

``````={filter(sheetone!A:A, len(sheetone!A:A)); filter(sheettwo!A:A, len(sheettwo!A:A))}
``````

-

You can try this function to combine two columns

``````=unique(transpose(split(join(";",A:A)&join(";",B:B),";")))
``````