Class DataSourcePivotTable

DataSourcePivotTable

访问和修改现有的数据源数据透视表。要创建新的数据源数据透视表,请使用 Range.createDataSourcePivotTable(dataSource)

此类只能用于连接到数据库的数据。

方法

方法返回类型简介
addColumnGroup(columnName)PivotGroup根据指定的数据源列添加新的数据透视列组。
addFilter(columnName, filterCriteria)PivotFilter根据指定的数据源列和指定的过滤条件添加新过滤器。
addPivotValue(columnName)PivotValue根据指定的数据源列添加新的透视值,而不进行任何汇总 函数。
addPivotValue(columnName, summarizeFunction)PivotValue根据具有指定摘要的指定数据源列添加新的数据透视值 函数。
addRowGroup(columnName)PivotGroup根据指定的数据源列添加新的数据透视表行组。
asPivotTable()PivotTable将数据源数据透视表作为常规数据透视表对象返回。
cancelDataRefresh()DataSourcePivotTable取消与此对象关联的数据刷新(如果此对象当前正在运行)。
forceRefreshData()DataSourcePivotTable无论当前状态如何,都刷新此对象的数据。
getDataSource()DataSource获取对象链接到的数据源。
getStatus()DataExecutionStatus获取对象的数据执行状态。
refreshData()DataSourcePivotTable刷新对象数据。
waitForCompletion(timeoutInSeconds)DataExecutionStatus等待当前执行完成,在提供的秒数后超时。

详细文档

addColumnGroup(columnName)

根据指定的数据源列添加新的数据透视列组。

参数

名称类型说明
columnNameString数据源列名称(用于构建数据透视组)。

返回

PivotGroup - 新的数据透视组。

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

addFilter(columnName, filterCriteria)

根据指定的数据源列和指定的过滤条件添加新过滤器。

参数

名称类型说明
columnNameString过滤器所依据的数据源列名称。
filterCriteriaFilterCriteria过滤条件使用的条件。

返回

PivotFilter - 新过滤器。

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

addPivotValue(columnName)

根据指定的数据源列添加新的透视值,而不进行任何汇总 函数。仅适用于 Looker 测量。

以下代码展示了如何将 Looker 指标添加为数据透视值。

// TODO(developer): Replace with your spreadsheet ID which has a Looker data source.
var spreadsheet = SpreadsheetApp.openById("abcd1234")
var datasource = spreadsheet.getDataSources()[0];
var pivotTable = datasource.createDataSourcePivotTableOnNewSheet();

pivotTable.addPivotValue("columnName");

此方法仅适用于 Looker 数据源。

参数

名称类型说明
columnNameString数据透视值所依据的数据源列名称。

返回

PivotValue - 新的数据透视值。

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

addPivotValue(columnName, summarizeFunction)

根据指定的数据源列和指定的汇总函数添加新的透视值。

如需为 Looker 测量添加透视值,请使用 addPivotValue(columnName)

参数

名称类型说明
columnNameString数据透视值所依据的数据源列名称。
summarizeFunctionPivotTableSummarizeFunction透视值使用的汇总函数。

返回

PivotValue - 新的数据透视值。

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

addRowGroup(columnName)

根据指定的数据源列添加新的数据透视表行组。

参数

名称类型说明
columnNameString数据源列名称(用于构建数据透视组)。

返回

PivotGroup - 新的数据透视表元素组。

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

asPivotTable()

将数据源数据透视表作为常规数据透视表对象返回。

返回

PivotTable - 数据透视表。

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

cancelDataRefresh()

取消与此对象关联的数据刷新(如果当前正在运行)。

以下示例展示了如何取消公式刷新。

const spreadsheet = SpreadsheetApp.getActive();
const formula = spreadsheet.getDataSourceFormulas()[0];
// Cancel the ongoing refresh on the formula.
formula.cancelDataRefresh();

如果数据源类型未启用,则会抛出异常。使用 SpreadsheetApp#enable...Execution() 方法为特定数据源启用数据执行 类型。

返回

DataSourcePivotTable - 数据对象。

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

forceRefreshData()

无论当前状态如何,都刷新此对象的数据。查看refreshData() 。如果您想取消此对象当前正在运行的刷新,请参阅 cancelDataRefresh()

如果数据源类型未启用,则会抛出异常。使用 SpreadsheetApp#enable...Execution() 方法为特定数据源类型启用数据执行。

返回

DataSourcePivotTable - 数据对象。

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

getDataSource()

获取对象链接到的数据源。

返回

DataSource - 数据源。

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

getStatus()

获取对象的数据执行状态。

返回

DataExecutionStatus - 数据执行状态。

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

refreshData()

刷新对象数据。

如果当前处于 error 状态,则会抛出异常。使用 DataSource#updateSpec() 更新规范。方法为 而不是 forceRefreshData() 的首选,可防止对数据源进行意外编辑。

如果数据源类型未启用,则会抛出异常。使用 SpreadsheetApp#enable...Execution() 方法为特定数据源启用数据执行 类型。

返回

DataSourcePivotTable - 数据对象。

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

waitForCompletion(timeoutInSeconds)

等待当前执行完成,在提供的秒数后超时。 如果在超时时未完成执行,则会抛出异常,但不会取消 数据执行。

参数

名称类型说明
timeoutInSecondsInteger等待数据执行的时间,以秒为单位。最长为 300 秒。

返回

DataExecutionStatus - 数据执行状态。

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets