Access and modify existing data source formulas. To create a new data source formula, use Range.setFormula(formula)
.
Only use this class with data that's connected to a database.
Methods
Method | Return type | Brief description |
---|---|---|
cancelDataRefresh() | DataSourceFormula | Cancels the data refresh associated with this object if it's currently running. |
forceRefreshData() | DataSourceFormula | Refreshes the data of this object regardless of the current state. |
getAnchorCell() | Range | Returns the Range representing the cell where this data source formula is anchored. |
getDataSource() | DataSource | Gets the data source the object is linked to. |
getDisplayValue() | String | Returns the display value of the data source formula. |
getFormula() | String | Returns the formula for this data source formula. |
getStatus() | DataExecutionStatus | Gets the data execution status of the object. |
refreshData() | DataSourceFormula | Refreshes the data of the object. |
setFormula(formula) | DataSourceFormula | Updates the formula. |
waitForCompletion(timeoutInSeconds) | DataExecutionStatus | Waits until the current execution completes, timing out after the provided number of seconds. |
Detailed documentation
cancelDataRefresh()
Cancels the data refresh associated with this object if it's currently running.
This example shows how to cancel a formula refresh.
const spreadsheet = SpreadsheetApp.getActive(); const formula = spreadsheet.getDataSourceFormulas()[0]; // Cancel the ongoing refresh on the formula. formula.cancelDataRefresh();
Throws an exception if the data source type is not enabled. Use
SpreadsheetApp#enable...Execution()
methods to enable data execution for specific data source
type.
Return
DataSourceFormula
— The data object.
Authorization
Scripts that use this method require authorization with one or more of the following scopes:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
forceRefreshData()
Refreshes the data of this object regardless of the current state. See refreshData()
for
more details. If you want to cancel a currently running refresh of this object, see cancelDataRefresh()
.
Throws an exception if the data source type is not enabled. Use SpreadsheetApp#enable...Execution()
methods to enable data execution for specific data source
type.
Return
DataSourceFormula
— The data object.
Authorization
Scripts that use this method require authorization with one or more of the following scopes:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getAnchorCell()
Returns the Range
representing the cell where this data source formula is anchored.
Return
Range
— The anchor cell.
Authorization
Scripts that use this method require authorization with one or more of the following scopes:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getDataSource()
Gets the data source the object is linked to.
Return
DataSource
— The data source.
Authorization
Scripts that use this method require authorization with one or more of the following scopes:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getDisplayValue()
Returns the display value of the data source formula.
Return
String
— The display value.
Authorization
Scripts that use this method require authorization with one or more of the following scopes:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getFormula()
Returns the formula for this data source formula.
Return
String
— The formula.
Authorization
Scripts that use this method require authorization with one or more of the following scopes:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getStatus()
Gets the data execution status of the object.
Return
DataExecutionStatus
— The data execution status.
Authorization
Scripts that use this method require authorization with one or more of the following scopes:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
refreshData()
Refreshes the data of the object.
Throws an exception if currently in error
state. Use DataSource#updateSpec()
to update the specification. The method is
preferred over forceRefreshData()
to prevent unexpected edits on data source.
Throws an exception if the data source type is not enabled. Use SpreadsheetApp#enable...Execution()
methods to enable data execution for specific data source
type.
Return
DataSourceFormula
— The data object.
Authorization
Scripts that use this method require authorization with one or more of the following scopes:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
setFormula(formula)
Updates the formula.
Parameters
Name | Type | Description |
---|---|---|
formula | String | The new formula. |
Return
DataSourceFormula
— The data source formula, for chaining.
Authorization
Scripts that use this method require authorization with one or more of the following scopes:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
waitForCompletion(timeoutInSeconds)
Waits until the current execution completes, timing out after the provided number of seconds. Throws an exception if the execution is not completed when timing out, but does not cancel the data execution.
Parameters
Name | Type | Description |
---|---|---|
timeoutInSeconds | Integer | The time to wait for data execution, in seconds. The maximum is 300 seconds. |
Return
DataExecutionStatus
— The data execution status.
Authorization
Scripts that use this method require authorization with one or more of the following scopes:
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets