The UNIQUE Function in Google Sheets

The UNIQUE function in Google Sheets is a hugely useful function that takes a range of data and returns the unique rows and discards the duplicate rows.

Here’s a super simple example to show how it works:

Unique Function Simple Example

Here, the data from column A is passed into the UNIQUE formula and the unique values are returned.

Continue reading The UNIQUE Function in Google Sheets

The OR Function in Google Sheets

The OR function in Google Sheets is a logical function that outputs TRUE if at least one of the inputs is TRUE, and FALSE only if all the inputs are FALSE.

Or Function Truth Table

It has useful applications in data cleaning where it pairs well with the IF Function and AND Function to categorize and organize data.

Continue reading The OR Function in Google Sheets

The FLATTEN Function in Google Sheets

The FLATTEN Function in Google Sheets flattens all the values from one or more ranges into a single column.

For example, in the following image, the four columns of data are stacked on top of each other by the single FLATTEN function in cell A6:

Flatten Function in Google Sheets

FLATTEN Function Syntax

=FLATTEN(range1,[range2,...])

It takes one or more range arguments.

It doesn’t require them to be the same dimensions, so you can happily mix single cells, rows, columns, and even static values, and the FLATTEN function won’t bat an eyelid. E.g.:

=FLATTEN(A1,"fixed value 1",C1:C1000,A4:Z5,"fixed value 2")

Note that this behavior is different to other functions like the FILTER function or the MMULT function that require specific matching dimensions with the input ranges.

FLATTEN is part of the Array family of functions in Google Sheets.

FLATTEN Function Notes

Entering the data as one big range or as separate columns affects how the FLATTEN function combines the data.

For example, if we pass in a single range as the argument to a FLATTEN function, it combines the data by stacking each row in turn, so that the data alternates:

=FLATTEN(A1:B3)

Flatten Formula with single range in Google Sheets

Compare this to the output when we enter the columns of our data table as separate ranges:

=FLATTEN(A1:A3,B1:B3)

Flatten Function Google Sheets

In this case, we can see that the columns are stacked atop each other, i.e. all the values from column A first, then all the values from column B, etc.

FLATTEN Function Template

Click here to open a view-only copy >>

Feel free to make a copy: File > Make a copy…

If you can’t access the template, it might be because of your organization’s Google Workspace settings. If you right-click the link and open it in an Incognito window you’ll be able to see it.

You can also read about it in the Google Documentation.

FLATTEN Formula Example

The FLATTEN function is handy for tidying up messy data.

For example, suppose we have the following dataset with emails spread across columns A, B, and C, and we want to consolidate them into a single column:

Email addresses in Google Sheets

The FLATTEN function is an easy, succinct method:

=FLATTEN(A:C)

which gives an output:

Flatten Function in Google Sheets

Advanced FLATTEN Formula Examples

Unpivot Data With FLATTEN

Probably the most useful application I’ve seen for the FLATTEN function is to unpivot in Google Sheets.

Unpivot is a method to turn wide data into tall data.

It’s the opposite action to a pivot table, which turns data from the tall format (database) to a wide table format (good for humans and charts to read).

Unpivoting data used to be difficult in Google Sheets before the FLATTEN function arrived, but thankfully it’s now possible with a single array formula.

unpivot data in Google Sheets

The unpivot is achieved by this array formula that joins the data together, flattens it, and then splits it into multiple columns.

=ArrayFormula(SPLIT(FLATTEN(A2:A5 & "🪐" & B1:D1 & "🪐" & B2:D5), "🪐"))

Now I know you’re wondering about that planet emoji “🪐” in the formula…

For the SPLIT function, we can use whatever character you like as the delimiter, provided it’s not in our dataset already. Hence why I chose the 🪐 emoji!

Learn more about the unpivot method here: Unpivot In Google Sheets With Formulas (How To Turn Wide Data Into Tall Data)

Find Unique Items In A Grouped List

Suppose you want to find unique values from data that looks like this:

Split Function To Find Uniques

You want to extract a unique list of items from the column containing grouped words, which are separated by commas.

Use this formula to extract the unique values:

=ArrayFormula( QUERY( UNIQUE( TRIM( FLATTEN( SPLIT(A2:A100,",")))),"where Col1 is not null order by Col1"))

Read more about this technique in this post: Get A Unique List Of Items From A Column With Grouped Words

The TRANSPOSE Function in Google Sheets

The TRANSPOSE function in Google Sheets interchanges the rows and columns of an array or range of cells in Google Sheets.

For example, suppose you are given data in a horizontal format like this:

horizontal Range in Google Sheets

It’s awkward to read because it’s too wide to fit on a single screen. We’re also better at scanning down columns than across rows.

The TRANSPOSE function will flip the horizontal arrangement to a vertical arrangement:

=TRANSPOSE(A1:U3)

like so:

Transpose Function in Google Sheets

Much easier to use!

And it works better with other formulas like QUERY, SORT, FILTER, etc.

TRANSPOSE Function in Google Sheets Syntax

=TRANSPOSE(array_or_range)

It takes a single argument: an array or range of cells.

Transposition works by swapping the row and column positions of each value. For example, a value in position row 3 column 10 will be put into position row 10 column 3 by the transposition operation.

As a result, ranges of size X rows and Y columns will become ranges of size Y rows and X columns.

In the screenshots at the top of this screen, the horizontal range with 3 rows and 21 columns became a vertical-oriented range with 21 rows and 3 columns.

It’s part of the Array family of functions in Google Sheets.

TRANSPOSE function template

Click here to open a view-only copy >>

Feel free to make a copy: File > Make a copy…

If you can’t access the template, it might be because of your organization’s Google Workspace settings. If you right-click the link and open it in an Incognito window you’ll be able to see it.

The TRANSPOSE function is also covered in the Day 25 lesson of my free Advanced Formulas 30 Day Challenge course.

You can also read about it in the Google Documentation.

TRANSPOSE Formula Examples

The TRANSPOSE function is useful in a wide variety of projects that make use of advanced formulas.

It pairs well with other text or array formulas, like the SPLIT function.

For example, maybe your data contains strings of comma-separated values in a cell that you want to present in column format. E.g. suppose you have an array of numbers in cell A1:

1,2,13,24,35,15,71

Then you can combine the TRANSPOSE function with the SPLIT function to achieve this:

=TRANSPOSE(SPLIT(A1,","))

Transpose Function with Split Function Google Sheets

This post on how to alphabetize comma-separated strings uses this TRANSPOSE + SPLIT technique to break apart a string, before going on to sort the data and recombine.

More examples of TRANSPOSE formulas

Etch A Sheet In Google Sheets

Running Total Array Formulas Using The MMULT Function