- Home
- Guides
- Google Workspace
- How to import data from another Google Sheet with IMPORTRANGE
How to import data from another Google Sheet with IMPORTRANGE
Use the IMPORTRANGE function to pull a live range from one Google Sheet into another, choose a specific tab, keep new rows flowing in, and import from a sheet owned by a different Google account.
Jump to a step (7)
Teams often keep data in one spreadsheet and need it in another, so someone copies and pastes it every time it changes. The copies go stale, and it gets worse when the source file belongs to another account.
Within one spreadsheet you can reference another tab directly. To pull data from a different Google Sheet file, you need IMPORTRANGE, which takes the source sheet's URL and a range. The imported data updates when the source changes.
The video uses two files: a Sample Data file with two tabs (Insurance and Players) and an Import Data file that receives the data.
What you need
- A Google account with Google Sheets
- The URL of the source Google Sheet
- At least view access to the source sheet if it belongs to another account
Step by step
0 of 7 done-
01
Write the IMPORTRANGE formula
In the destination sheet, click the cell where the data should start and type
=IMPORTRANGE(. Paste the source sheet's URL in quotation marks, add a comma, then the range in quotation marks:=IMPORTRANGE("https://docs.google.com/spreadsheets/d/...","A1:D17")Press Enter.
-
02
Allow access the first time
The first time you connect two files, the cell shows a
#REF!error. Hover over it and click Allow access. The data appears after that. -
03
Choose a specific tab
If you do not name a tab, IMPORTRANGE uses the first tab in the source file. To use another tab, put its name and an exclamation mark before the range:
=IMPORTRANGE("URL","Players!A1:F17")The tab name must match exactly. Remove it and the formula goes back to the first tab (Insurance in the video).
-
04
Use a bigger range for new rows
To pick up rows you add later, extend the range beyond the current data, for example
"Players!A1:F50". When you add a row in the source, it shows up in the destination shortly after the source sheet saves. -
05
Keep the import area clear
IMPORTRANGE needs every cell in its output area to be empty. If you type anything inside that area, the formula breaks with an error. Undo the entry and keep the area clear.
-
06
Put the URL in a cell
Instead of typing the URL in the formula, paste it into a cell such as
J2and refer to that cell without quotation marks:=IMPORTRANGE(J2,"Players!A1:F50")When the source file changes, you only replace the URL in
J2. -
07
Import from another Google account
If the source sheet belongs to a different account, the formula returns "You do not have permission to access that spreadsheet". Open the source sheet in the other account, click Share, add your email with Viewer access and send.
Refresh your sheet, click Allow access, and the data loads. View access is enough. You do not need edit access.
Tips and common problems
- Nothing shows until you click Allow access. You only need to do this once for each pair of files.
- Do not type inside the range the formula fills. Any value there breaks the import.
- Changes in the source appear only after it saves. Click out of the cell you are editing so Google Sheets saves it.
- In a cell reference like J2, do not use quotation marks. Quotation marks are only for a URL or range typed directly in the formula.
Questions
How do I pull data from another Google Sheet automatically?
Use =IMPORTRANGE("source URL","Sheet1!A1:D100"). The data stays linked, so changes in the source show up in the destination.
Why does IMPORTRANGE say I do not have permission?
Your account cannot open the source file. Ask the owner to share it with you. View access is enough. Then click Allow access in your sheet.
How do I import a specific tab with IMPORTRANGE?
Add the tab name and an exclamation mark before the range, for example "Players!A1:F17". Without it, the first tab is used.
