In this article:

Google Sheets getDataRange (How to Use It in 2024)

May 8, 2024

Google Sheets getDataRange

The ‘getDataRange’ method in Google Sheets API or in Google Apps Script refers to a function used to obtain the range of cells that currently have data in a sheet. This range includes any cell that has a value or a formula, extending to the furthest row and column that contain data. 

It's a convenient way to dynamically reference a data set without needing to specify explicit ranges, especially when the size of the data can change over time.

Here’s a simple example of how you might use ‘getDataRange’ in Google Apps Script:

function myFunction() {

  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();

  var range = sheet.getDataRange();

  var values = range.getValues();

  // You can now work with the values in the data range

  Logger.log(values);

}

In this script:

  • getActiveSheet() is used to get the current active sheet.
  • getDataRange() is called on the sheet object to get the range that contains data.
  • getValues() is then called on this range to get a two-dimensional array of the sheet's data.

How to Use getDataRange in Google Sheets

Follow the steps below to use ‘getDataRange’ in Google Sheets. 

1. Navigate to the Script Editor from Google Sheets

Open the script editor by selecting "Extensions" > "Apps Script" from within Google Sheets. This lets you write scripts to enhance Google Sheets functionalities.

google sheets getdatarange

2. Create a New Script File in the Script Editor

If the editor shows a default function named myFunction, you can either use this or create a new script file by clicking "+" next to "Files" and selecting "Script". Name your script for clarity.

getdatarange google sheets

3. Write Your Data Retrieval Script with getDataRange

Input the following code into the script editor:

function getSheetData() {

  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();

  var range = sheet.getDataRange();

  var values = range.getValues();

  Logger.log(values);

}

This code snippet accesses the active sheet, fetches the range of cells containing data, retrieves the data, and logs it for review.

The line Logger.log(values); in your script is key for checking the captured data. It outputs the data to the log, allowing for verification.

4. Execute Your Script to Fetch Data from Google Sheets

Run your script by clicking the play button (▶️) next to the getSheetData function name. This action fetches the data from your Google Sheet using the getDataRange method.

5. Check the Script Execution Log for Retrieved Data

After running the script, view the logged data under the "Execution Log" . You should see the "Execution completed" notice to confirm the successful data retrieval.

The output in the logs shows the data in a structured array format, where each sub-array represents a row from the sheet. This confirms that the getDataRange successfully retrieved the data.

We hope that you now have a better understanding of how to use the Google Sheets getDataRange. If you enjoyed this article, you might also like our article on how to embed Google Sheets into a website or our article on how to insert Harvey Balls in Google Sheets.

Get Google Sheets productivity and automation tips delivered straight to your inbox
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
We'll email you 1-3 times a week — and never share your information.
Get your copy of our free Google Sheets automation guide!
  • 27 pages of Google Sheets tips and tricks to save time
  • Covers pivot tables and other advanced topics
  • 100% free

Work less, automate more!

Use Lido to connect your spreadsheets to email, Slack, calendars, and more to automate data transfers and eliminate manual copying and pasting. View all use cases ->