Split Google Sheets table into multiple sheets

Split Sheet will divide your Google Sheets table into several sheets based on the contents in the selected columns or the number of rows. The resulting sheets can be placed to the same file next to the source sheet, to a completely new Google spreadsheet, or to multiple separate spreadsheets next to the original file. They will also auto-update with your source table if you opt to return the results as a formula.

Before you start

Please bear in mind that Google Sheets limits the total number of possible cells in your file up to 10 million cells.

If there are filtered or/and hidden rows in your sheet, they will be processed and grouped into multiple sheets with visible records as well.

How to use Split Sheet

Start the add-on

Open the sheet you want to split and go to Extensions > Split Sheet > Start:
Run the Split Sheet tool.

Tip. You will also find Split Sheet in Power Tools. Just proceed to the Split group and look for the add-on icon:
Split Sheet icon in Power Tools.

Step 1: Select your table and a way to split it

Once the add-on loads, it will automatically select the range with your active table to split:
Select your sheet and a way to split it.
You can choose any other table in your file by picking any cell within that table and hitting Auto select. The add-on will highlight all cells with data till the first empty row & column.

Tip. Or click the Select range icon within the Source range field and specify the exact range to process:
Select the range with your data.

If columns in your sheet have labels, check the option My table has headers. In this case, each new sheet will contain the same set of titles copied from this original table.

Here you are to also decide on the way to split the sheet of interest:

  • Go with Common values to group the data based on the common info in the specified columns:
    Split Google sheet by the common data in the selected columns.
  • Or opt for Number of rows if the size of each dataset is more important for your task:
    Split Google sheet by the number of rows.

Click Next, and depending on the hand-picked way to split, the next step will invite you to choose either columns or rows to split by.

Step 2 (A): Select columns to split by

If you chose to split your Google sheet by columns on the previous step, they will appear grouped in the table:
Select columns to split by.

  1. Use the checkbox in the header row to quickly select all columns and group data by records they all contain. The 1st row content will hint on the values in those columns.
  2. You are free to choose any particular columns to split by. If you check more than one column, the add-on will create new sheets based on the common info in all selected columns:
    Split Google sheet by the common data in the selected columns.
  3. Decide where to place the resulting sheets:
    3 ways to get the result.

    • Have a brand new file created with the new sheets (in your Drive next to your source spreadsheet) by picking the option New spreadsheet.
    • Choose Multiple separate spreadsheets to place each table to a completely new file. The add-on will create a new folder next to a file with your original table in Drive, and put all these new spreadsheets there.
    • Or select Current spreadsheet to insert all new sheets to the same file where your source table is.
  4. Toggle the last setting on to insert each split table as a formula. This enables each resulting sheet to update automatically once something changes in your original data set.

    Note. This is a beta feature. Your feedback is eagerly anticipated and much appreciated! 🙂

When you're ready, press Split.

Step 2 (B): Select rows to split by

If you chose to split your Google sheet by N rows on the previous step, here you will need to specify those numbers:
Select rows to split by.

  1. Pick Every N rows to split the Google sheet by the equal number of rows. In other words, your table will be divided by every number of rows you specify.
  2. Or make use of the other radio button to enter certain groups of rows, even those with a different number of rows, e.g. rows 1:10, 11-50, 51-1000.
    Note. Make sure the row ranges here don't fall outside the selected table on Step 1. Hence, if your table ends with row #100, the last correct range will be 50-100, not 50-1000.
  3. Decide where to place the resulting sheets:
    3 ways to get the result.

    • Have a brand new file created with the new sheets (in your Drive next to your source spreadsheet) by picking the option New spreadsheet.
    • Choose Multiple separate spreadsheets to place each table to a completely new file. The add-on will create a new folder next to a file with your original table in Drive, and put all these new spreadsheets there.
    • Or select Current spreadsheet to insert all new sheets to the same file where your source table is.

When the numbers are set, hit Split.

See the result

Once the add-on divides the table, you will see the confirmation message saying how many new sheets have been created and where they have been placed.

Tip. If you decide to place the resulting sheets to a new spreadsheet or multiple separate spreadsheets, the add-on will offer you a link to open the new file/folder with files right away.

Split Sheet result message.

How to auto-update split sheets correctly

Note. This is a beta feature. Your feedback is eagerly anticipated and much appreciated! 🙂

When you split a sheet using a formula and put the results either into a new spreadsheet or multiple separate spreadsheets, the add-on will use not just our custom functions for the job, but also the standard Google Sheets IMPORTRANGE function to pull split data.

By default, IMPORTRANGE requires your permission to connect to the original file. Hence, you must open each new spreadsheet and grant IMPORTRANGE access manually. Otherwise, you will see formula errors rather than split data. The steps below will help you do that correctly:

  1. Whenever IMPORTRANGE is used in the outcome formula, you will see a resulting message telling you how to connect the function to your source file:
    Final message if the formula was enabled.
  2. For your convenience, aside from the sheet with split data, the add-on creates one extra sheet — Connect file to IMPORTRANGE — where you are to grant that access.
  3. The Connect file tab will always contain the following:
    • a reminder to run Split Sheet to enable our custom functions
    • a name of the file that must be accessed by the formula
    • steps on how to connect IMPORTRANGE to that file
    • access status

    Just hover your mouse over the formula error under Access status and press Allow access:
    Connect file to IMPORTRANGE.

  4. As soon as you do that, the Access status will say Connected and the cell will turn green:
    Add-on has been started, IMPORTRANGE is connected.

When all required cells are green (meaning you've started Split Sheet & connected IMPORTRANGE), go to the split sheets and wait a bit till the result loads.

Limitations of standard functions used in the formula

Along with our own custom functions, the resulting formula uses some standard ones including QUERY and IMPORTRANGE. Here are some things you should know about the result returned by the formula:

  1. If you place the formula to a new spreadsheet or multiple separate files, our custom functions (COLUMNS_SGS, HEADERS_SGS, SPLIT_RANGE_SGS) won't start working until you run Split Sheet once. Since those files are newly created, this way you enable our custom function there. Do that before granting the IMPORTRANGE access and you won't have to reload the spreadsheet as well.
  2. Formulas won't work without our add-on. Whether you use the tool to create formulas or duplicate yourself shared files with formulas, you should have the add-on installed. Otherwise, there's just nothing to call for our custom functions with.
  3. The key records you're splitting by must not be blanks. Otherwise, too many empty rows will appear in the result.

    Note. Make sure there are no completely empty rows within the table — this will also affect the result.

  4. If there are mixed data types (e.g. numbers and text) within a column, the QUERY function will return only the majority data type leaving the rest as empty cells.
  5. Due to the way Google Sheets processes formulas, the number of columns in the outcome table is always fixed. It means that new columns added to your source tables (both within & at the end) won't appear in the result — Google Sheets will not adjust the ranges.
  6. Google Sheets functions cannot process and take any objects (e.g. images, charts, conditional formatting, etc.) but values to a resulting table.

Responses

Is there a way when using the split sheets add-on to copy the first 2 rows of the original data to the new tabs?

Hello Gina,

Thank you for your question. At the moment, only the first row of the selected range is considered as the header when the "My table has headers" option is selected. We appreciate your suggestion to support multiple header rows, and we have submitted it as a feature request to our development team.

How can I make the data update automatic, I did split my sheets but how can I make the new sheets I split get updated whenever the source sheet is updated?

Hey. I am trying to split my spreadsheet every 1500 rows, but it only does one range.

I also tried adding the ranges i wanted to split butit only gives me one.

Hello Edward,

Thank you for your comment.

Please note that the tool can process just one sheet from your Google spreadsheet at a time. If there are several sheets in your file and you want to split each of them by 1500 rows, then you first need to combine the data from all your sheets into one, and then run the Split Sheet tool again. To join tables from multiple sheets together, you can use the Combine Sheets tool.

If it is not your case, then please describe your task in more detail and send us a few screenshots showing what data you have, what result you want to get, what options for the add-on you choose. You can email the details to support@ablebits.com. We'll help you further.

Hi,

I would like to ask how can I split a sheet based on the alphabetical order on one column.
I have a list of several thousand of records and I need to split them in alphabetical order on different sheets.
Is there any way to do that with Ablebits? Tried some solutions here proposed but with no success

Hi Marco,

Thank you for your question.

If I understand your task right, first you need to sort your key column in an alphabetical order using the standard Sort option in Google Sheets. Then extract the first letter from the values in the key column in a separate column with the help of our Extract tool.

After that, you can split your sheet based on the extracted letters in the new column with the Split Sheet add-on.

If this solution doesn't work for you, feel free to email us at support@ablebits.com for further assistance.

Da'Quan Love says:
August 17, 2022 at 6:09 pm

How can I split sheets based upon a criteria. For example I have a column named state. I want to ONLY create a new sheet with the rows that have "NC" (for North Carolina) and another sheet with the remaining rows. I don't want to create 50 separate sheets for each state.

Hello Da'Quan Love,

Thank you for your comment.

Unfortunately, the Split Sheet tool won't help you to get the result you need since it doesn't support custom conditions. However, you can use another tool - Multiple VLOOKUP Matches - to solve your task. It will help you to pull out the rows according to the condition(s) you specify to another sheet.

If you have any questions or need further assistance, please email us at support@ablebits.com.

Is there a way to get the new tabs or spreadsheets to automatically update if the source data is changed? Lets say a date in one of the rows changes. Can it automatically update that same field on the separate tab or spreadsheet that is was split off to?

How do I split based one one column called category and then on a common value that could either be in Home column or Away column? So any rows that are in NBA category and have Home or Away Column = GSW ... then all of those rows should go into the NBA GSW tab ... and same for NBA LAKERS , etc.

How can i split a large list of names, email and phone numbers into groups of 15 on different sheets?

Hello Jasmine,

If you would like to split your list into separate sheets containing 15 rows of data each, please try adding an additional column (e.g. Column A) to your source data and filling it in with some values that will be the same for each portion of rows, say, A for A2:A16, B for A17:A31, C for A32:A46 and so on. Then it will be possible to select this additional column (Column A) as a column to split by when using the Split Sheet add-on and get the result of interest.

In case you have any questions, feel free to email us at support@ablebits.com.

Post a comment

Seen by everyone, do not publish license keys and sensitive personal info!

If you have any questions or issues with this add-in, please feel free to post your concerns in the comments area. As soon as we answer, a notification message will be sent to your e-mail. If you do not want to share your thoughts in public, please contact us at support@ablebits.com.