Using Text Rotation to Create Custom Table Headers in Google Sheets

Text Rotation in Google Sheets allows you to angle the text up or down inside your cells, which lets you create some nifty looking headers.

This particular example was prompted by a recent question from a reader:

How do I make a diagonal line to split a cell, so that I can enter text into two triangular subdivisions?

Google Sheet with diagonal text

You can’t split a cell explicitly, but you can use text rotation and formula-trickery to achieve this effect.

Text Rotation – Formula Method

="Quarters"&CHAR(10)&REPT(CHAR(8211),10)&CHAR(10)&"Regions"

Looking at each piece of this formula in turn:

CHAR(10) adds the line break

CHAR(8211) creates a dash

REPT(formula, 10) repeats the formula ten times, in this case it repeats the dash line ten times to create a long solid line.

(You can add as many CHAR(8211) as you require by simply changing the number of repetitions in the REPT function, to create the “best fit” line.)

The two column headings, Quarters and Regions, are then added either side of the formula.

Center align the cell and then, under the Format menu, rotate the text downwards:

Google Sheets Text Rotation Menu

You can adjust the angle of text rotation to get the best effect.

Note: You should only use this method for presentation tables, because it makes the column headings a mess for anything else, like pivot tables or charts. Generally the labels in column A need their own column heading.

Text Rotation – Direct Data Entry Method

First, just type your text in the cell, using Ctrl-Enter at the end of each title to put the next title on another line in the same cell.

For the dividing line, enter this directly by copy-pasting a series of Em-dashes (—).

After this, use rotation as in the above example. The -30° or -45° Angle appear to work best.

More Table Formatting Tips

For more tips on formatting tables in Google Sheets, check out this post: How To Make a Table in Google Sheets, and Make It Look Great

Leave a Reply

Your email address will not be published. Required fields are marked *