What is an Excel Table?
Excel Tables are containers for your data.
Imagine a house without any closets or cupboards to store your things, it would be chaos! Excel tables are like closets and cupboards for your data, they help to contain and organize data in your spreadsheets.
In your house, you might put all your plates into one kitchen cupboard. Similarly, you might put all your customer data into one Excel table.
Tables tell excel that all the data is related. Without a table, the only thing relating the data is proximity to each other.
Ok, so what’s so great about Excel Tables other than being a container to organize data? A lot actually. This post will tell you about all the awesome features tables have and should convince you to start using them.
The Parts of a Table
Throughout this post, I’ll be referring to various parts of a table, so it’s probably a good idea that we’re both talking about the same thing.
This is the Column Header Row. It is the first row in a table and contains the column headings that identify each column of data. Column headings must be unique in the table, they cannot be blank and they cannot contain formulas.
This is the Body of the table. The body is where all the data and formulas live.
This is a Row in the table. The body of a table can contain one or more rows and if you try to delete all the rows in a table a single blank row will remain.
This is a Column in the table. A table must contain at least one column.
This is the Total Row of the table. By default, tables don’t include a total row but this feature can be enabled if desired. If it’s enabled, it will be the last row of the table. This row can contain text, formula or remain blank. Each cell in the total row will have a drop down menu that allows selection of various summary formula.
Create a Table from the Ribbon
Creating an Excel Table is really easy. Select any cell inside your data and Excel will guess the range of your data when creating the table. You’ll be able to confirm this range later on. Instead of letting Excel guess the range you can also select the entire range of data in this step.
With the active cell inside your data range, go to the Insert tab in the ribbon and press the Table button found in the Tables section.
The Create Table dialog box will pop up. Excel guesses the range and you can adjust this range if needed using the range selector icon on the right hand side of the Where is the data for your table? input field. You can also adjust this range by manually typing over the range in the input field.
Checking the My table has headers box will tell Excel the first row of data contains the column headers in your table. If this is unchecked Excel will create generic column headers for the table labelled Column 1, Column 2 etc…
Press the Ok button when you’re satisfied with the data range and table headers check box.
Congratulations! You now have an Excel table and your data should look something like the above depending on the default style of your tables.
Contextual Table Tools Design Tab
Whenever you select a cell inside a table, you will notice a new tab appear in the ribbon labelled Table Tools Design. This is a contextual tab and only appears when a table is selected. When the active cell moves outside the table, the tab will disappear again.
This is where all the commands and options related to tables will live. This is where you’ll be able to name your table, find table related tools, enable or disable table elements and change your table’s style.
Create a Table with a Keyboard Shortcut
You can also create a table using a keyboard shortcut. The process is the same as described above but instead of using the Table button in the ribbon you can press Ctrl + T on your keyboard. It’s easy to remember since T is for Table!
There is actually another keyboard shortcut that you can use to create tables, Ctrl + L will also do the same thing. This is a legacy from when tables were called lists (L is for List).
Name a Table
Anytime you create a new table Excel will give it an initial generic name starting with Table1 and increasing sequentially. You should always rename your table with a descriptive and short name.
Not all names are allowed. There are a few rules for a table name.
- Each table must have a unique name within a workbook.
- You can only use letters, numbers and the underscore character in a table name. No spaces or other special characters are allowed.
- A table name must begin with either a letter or an underscore, it can not begin with a number.
- A table name can have a maximum of 255 characters.
Select any cell inside your table and the contextual Table Tools Design tab will appear in the ribbon. Inside this tab you can find the Table Name under the Properties section. Type over the generic name with your new name and press the Enter button when finished to confirm the new name.
Rename a Table
Renaming a table you’ve already named is the same process as naming a table for the first time. If you think about it, when you first name a table you’re actually renaming it from the generic name of Table1 to a new name.
So go back to the Table Tools Design tab and type your new name over the old one in the Table Name and press Enter. Easy, and the name is changed.
Changing your table name this way requires navigating to your table and selecting a cell within it, so it can be tedious if you need to rename a lot of tables across different sheets in your workbook. Instead, you can change any of your table names without going to each table using the Name Manager.
Go to the Formula tab and press the Name Manager button in the Defined Names section. You’ll be able to see all your named objects here. The table objects will have a small table icon to the left of the name. You can filter to show only the table objects using the Filter button in the upper right hand corner and selecting Table Names from the options.
You can then edit any name by selecting the item and pressing the Edit button. You’ll be able to change the name and add some comments to describe the data in your table.
Convert a Table Back to a Normal Range
Ok, you changed your mind and don’t want your data inside a table anymore. How do you convert it back into a regular range?
If changing it to a table was the last thing you did, Ctrl + Z to undo your last action is probably the quickest way.
If it wasn’t the last thing you did, then you’re going to need to use the Convert to Range command found in the Table Tools Design tab under the Tools section.
You’ll be prompted to confirm that you really want to convert the table to a normal range. Noooooo, don’t do it, tables are awesome!
If you click on yes, then all the awesome benefits from tables will be gone except for the formatting design. You’ll need to manually clear this from the range if you want to get rid it. You can do this by going to the Home tab then pressing the Clear button found in the Editing section, then selecting Clear Formats.
This can also be done from the right click menu. Right click anywhere in the table and select Table from the menu and then Convert to Range.
Select the Entire Column
If your data is not inside a table then selecting an entire column of the data can be difficult. The usual way would be to select the first cell in the column and then hold Ctrl + Shift then press the Down arrow key. If the column has blank cells, then you might need to press the Down arrow key a few times until you reach the end of the data.
The other option is to select the first cell and then use the scroll bar to scroll to the end of your data then hold the Shift key while you select the last column.
Both options can be tedious if you have a lot of data or there are a lot of blanks cells in the data.
With a table, you can easily select the entire column regardless of blank cells. Hover the mouse cursor over the column heading until it turns into a small arrow pointing down then left click and the entire column will be selected. Left click a second time to include the column heading and any total row in the selection.
Select the Entire Row
Selecting the entire row is just as easy. Hover the mouse cursor over the left side of the row until it turns into a small arrow pointing left then left click and the entire row will be selected. This works on both the column heading row and total row.
Select the Entire Table
It’s also possible to select the entire table and there are a couple different ways to do this.
You can place the active cell cursor inside the table and press Ctrl + A. This will select the entire body of the table excluding the column headers and total row. Press Ctrl + A again to include the column headers and total row.
Hover the mouse over the top left hand corner of the table until the cursor turns into a small black diagonal right and downward pointing arrow. Left click once to select only the body. Left click a second time to include the header row and total row.
You can also select the table with the mouse. Place the active cell inside the table and then hover the mouse cursor over any edge of the table until it turns into a four way directional arrow then left click. This will also select the column headers and total row.
Select Parts of the Table from the Right Click Menu
You can also select rows, columns or the entire table using the right click menu. Right click anywhere on the row or column you want to select then choose Select and pick from the three options available.
Add a Total Row
You can add a total row which allows you to display summary calculations in the last row of your table.
Adding summary calculations at the bottom of your data can be dangerous as they might end up getting included by accident in a pivot table using the data. This is another advantage of tables, as the total row won’t be included in any pivot tables created with the table.
To enable the total row, go to the Table Tools Design tab and check the Total Row box found in the Table Style Options section.
You can temporarily disable the total row without losing the formulas you added to it. Excel will remember the formulas you had and they will appear when you enable it again.
Each cell in the total row has a drop down menu that allows you to pick various aggregating functions to summarize the column of data above.
You can also enter your own formulas. I’ve entered a SUMPRODUCT formula in the Unit Price total to sum the Quantity x Unit Price to calculate a total sale amount. Formulas don’t have to return a number, they can also be text results.
Constant numerical or text values are also allowed anywhere in the total row. In fact the leftmost column will usually contain the text Total by default.
You can also add the total row with a right click. Right click anywhere on the table and the choose Table and Total Row from the menu.
Disable the Column Header Row
The column header row is enabled by default, but you can disable it. This doesn’t delete the column headers, it’s essentially like hiding them as you will still reference columns based on the column header name.
Go to the Table Tools Design tab and uncheck the Total Row box found in the Table Style Options section.
Add Bold Format to the First or Last Columns
You can enable a bold formatting on either your first or last column to highlight it and draw attention to them over other columns.
Go to the Table Tools Design tab and check either of the First Column or Last Column boxes (or both) found in the Table Style Options section.
Add Banded Rows or Columns
Banded rows are already enabled by default, but you can turn them off if you want. Banded columns are disabled by default, so you need to enable them if you want them.
To enable or disable either, go to the Table Tools Design tab and check or uncheck the Banded Rows or Banded Columns boxes found in the Table Style Options section.
I generally find banded rows are the most useful and if you enable banded columns at the same time, the table starts to look a little messy. I recommend one or the other and not both at the same time.
- Table with no banded rows or columns.
- Table with banded rows only.
- Table with banded columns only.
- Table with both banded rows and columns.
By default, the table filters option is enabled. You can disable them from the Table Tools Design tab by unchecking the Filter Button box found in the Table Style Options section.
You can also toggle the filters on or off from the active table by using the regular filter keyboard shortcut of Ctrl + Shift + L.
If you left click on any of the filters, it will bring up the familiar filter menu where you can sort your table and apply various filters depending on the type of data in the column.
The great thing about table filters is you can have them on multiple tables in the same sheet simultaneously. You will need to be careful though as filtered items in one table will affect the other tables if they share common rows. You can only have one set of filters at a time in a sheet of data without tables.
Total Row with Filters Applied
When you select a summary function from the drop down menu in the total row, Excel will create the corresponding SUBTOTAL formula. This SUBTOTAL formula ignores hidden and filtered items. So when you filter your table these summaries will update accordingly to exclude the filtered values.
Note that the SUMPRODUCT formula in the Unit Price column still includes all the filtered values while the SUBTOTAL sum formula in the Quantity column does not.
Column Headers Remain Visible When Scrolling
If you scroll down while the active cell is in a table, its column headers will remain visible along with the filter buttons. The table’s column headings will get promoted into the sheet’s column headings where we would normally see the alphabetic column name.
This is extremely handy when dealing with long tables as you won’t need to scroll back up to the top to see the column name or use the filters.
Automatically Include New Rows and Columns
If you type or copy and paste new data into the cells directly below a table, they will automatically be absorbed into the table.
The same thing happens when you type or copy and paste into the cells directly to the right of a table.
Automatically Fill Formulas Down the Entire Column
When you enter a formula inside a table it will automatically fill the formula down the entire column.
Even when a formula has already been entered and you add new data to the row directly below the table any existing formulas will automatically fill.
Editing an existing formula in any of the cells will also update the formula in the entire column. You’ll never forget to copy and paste down a formula again!
Turn Off the Auto Include and Auto Fill Settings
You can turn off the feature that automatically adds new rows or columns and fills down formulas.
Go to the File tab and select Options. Choose Proofing then press the AutoCorrect Options button. Navigate to the AutoFormat As You Type tab in the AutoCorrect dialog box.
Unchecking the Include new rows and columns in table option allows you to type directly underneath or to the right of a table without it absorbing the cells.
Unchecking the Fill formulas in tables to create calculated columns option means the formulas in a table will no longer automatically fill down the column.
Resize with the Handle
Every table comes with a Size Handle found in the bottom rightmost cell of the table.
When you hover the mouse over the handle, the cursor will turn into a double-sided diagonally slanting arrow and you can then click and drag to resize the table. You can either expand or contract the size. Data will be absorbed into the table or removed from it accordingly.
Resize with the Ribbon
You can also resize the table from the ribbon. Go to the Table Tools Design tab and press the Resize Table command in the Properties section.
The Resize Table dialog box will pop up and you’ll be able to select a new range for your table. Use the range selector icon to select a new range. You can select either a larger or smaller range, but The table headers will need to remain in the same row and the new table range must overlap the old table range.
Add a New Row with the Tab Key
You can add a new blank row to a table with the Tab key. Place the active cell cursor inside the table on the cell containing the sizing handle and press the Tab key.
The tab key act like a carriage return and the active cell is taken to the rightmost cell on a new line that’s added directly below.
This is a handy shortcut to know because when the total row is enabled, it’s not possible to add a new row by typing or copying and pasting data directly below the table.
Insert Rows or Columns
You can insert extra rows or columns into a table with a right click. Select a range in the table and right click then choose Insert from the menu. You can then either choose to insert Table Columns to the Left or Table Rows Above.
Table Columns to the Left will insert the number of columns selected to the left of the selection and the number of rows in the selection is ignored.
Table Rows Above will insert the number of rows selected just above the selection and the number of columns in the selection is ignored.
Delete Rows or Columns
Deleting rows or columns has a similar story to inserting them. Select a range in the table and right click then choose Delete from the menu. You can then either choose to delete Table Columns or Table Rows.
Formats in a Table Automatically Apply to New Rows
When you add new data to your table, you don’t need to worry about applying formatting to match the rest of the data above. Formatting will automatically fill down from above if the formatting has been applied to the entire column.
I’m not just talking about the table style formats. Other formatting like dates, numbers, fonts, alignments, borders, conditional formatting, cell colours etc. will all automatically fill down if they’ve been applied to the whole column.
If you’ve formatted all your numbers as a currency in a column and you add new data, it too will get the currency format applied to it.
You never need to worry about inconsistent formatting in your data.
Add a Slicer
You can add a slicer (or several) to a table for an easy to use filter and visual way to see what items the table is filtered on.
Go to the Table Tools Design tab and press the Insert Slicer button found in the Tools section.
Change the Style
Changing the styling of a table is quick and easy. Go to the Table Tools Design select a new style from the selection found in the Table Styles section. If you left click the small downward arrow on the right hand side of the styles palette, it will expand to show all available options.
These table styles apply to the whole table and will also apply to any new rows or columns added later on.
There are many options to choose from including light, medium and dark themes. As you hover over the various selections, you’ll be able to see a live preview in the worksheet. The style won’t actually change until you click on one though.
You can even create your own New Table Style.
Set a Default Table Style
You can set any of the styles available as the default so that when you create a new table you don’t need to change the style. Right click on the style you want to set as the default and then choose Set As Default from the menu.
Unfortunately, this is a workbook level setting and will only affect the current workbook. You will need to set the default for each workbook you create if you don’t want the application default option.
Only Print the Selected Table
When you place the active cell cursor inside a table and then try to print, there is an option to only print the selected table. Go to the Print menu screen by either going to the File tab and selecting Print or using the Ctrl + P keyboard shortcut, then select Print Selected Table in the settings.
This will remove any items from the print area that are not in the table.
Tables come with a useful feature called structured referencing which helps to make range references more readable. Ranges within a table can be referred to using a combination of the table name and column headings.
Instead of seeing a formula like this =SUM(D3:D9) you might see something like this =SUM(Sales[Quantity]) which is much easier to understand the meaning of.
This is why naming your table with a short descriptive name and column headings is important as it will improve the readability of the structured references!
When you reference specific parts of a table, Excel will create the reference for you so you don’t need to memorize the reference structure but it will help to understand it a bit.
Structured references can contain up to three parts.
- This is the table name. When referencing a range from inside the table this part of the reference is not required.
- These are range identifiers and identify certain parts of the reference for a table like the headers or total row.
- These are the column names and will either be a single column or a range of columns separated by a full colon.
Example structured References for a Row
- =Sales[@[Unit Price]] will reference a single cell in the body.
- =Sales[@[Product]:[Unit Price]] will reference part of the row from the Product column to the Unit Price column including all columns in between.
- =Sales[@] will reference the full row.
Example Structured References for Columns
- =Sales[Unit Price] will reference a single column and only include the body.
- =Sales[[#Headers],[#Data],[Unit Price]] will reference a single column and include the column header and body.
- =Sales[[#Data],[#Totals],[Unit Price]] will reference a single column and include the body and total row.
- =Sales[[#All],[Unit Price]] will reference a single column and include the column header, body and total row.
Example Structured References for the Total Row
- =Sales[#Totals] will reference the entire total row.
- =Sales[[#Totals],[Unit Price]] will reference a cell in the total row.
- =Sales[[#Totals],[Product]:[Unit Price]] will reference part of the total row from the Product column to the Unit Price column including all columns in between.
Example Structured References for the Column Header Row
- =Sales[#Headers] will reference the entire column header row.
- =Sales[[#Headers],[Order Date]] will reference a cell in the column header row.
- =Sales[[#Headers],[Product]:[Unit Price]] will reference part of the column header row from the Product column to the Unit Price column including all columns in between.
Example Structured References for the Table Body
- =Sales will reference the entire body.
- =Sales[[#Headers],[#Data]] will reference the entire column header row and body.
- =Sales[[#Data],[#Totals]] will reference the entire body and total row.
- =Sales[#All] will reference the entire column header row, body and total row.
One of the great things about a table is the structured references will appear in Intellisense menus when writing formulas. This means you can easily write a formula using the structured references without remembering all the fields in your table.
After typing the first letter of the table name, the IntelliSense menu will show the table name among all the other objects starting with that letter. You can use the arrow keys to navigate to it and then press the Tab key to autocomplete the table name in your formula.
If you want to reference a part of the table, you can then type a [ to bring up all the available items in the table. Again, you can navigate with the arrow keys and then use the Tab key to autocomplete the field name. Then you can close the item with a ].
Turn Off Structured Referencing
If you’re not a fan of being forced to use the structured referencing system, then you can turn it off. Any formulas that have been entered using the structured referencing will remain and they will still work the same. You’ll also still be able to use structured references, Excel just won’t automatically create them for you.
To turn it off, go to the File tab and then select Options. Choose Formulas on the side pane and then uncheck the Use table names in formulas box and press the Ok button.
Summarize with a PivotTable
You can create a pivot table from your table in Table Tools Design tab, press the Summarize with PivotTable button found in the Tools section. This will bring up the Create PivotTable window and you can create a pivot table as usual.
This is the same as creating a pivot table from the Insert tab and doesn’t give any extra options specific tables.
Create Custom Table Styles
Adding a Table to the Data Model