Class DataSourceSheet

数据工作表

访问和修改现有数据源工作表。如需创建新的数据源工作表,请使用 Spreadsheet.insertDataSourceSheet(spec)

仅将此类用于与数据库相关联的数据。

方法

方法返回类型简介
addFilter(columnName, filterCriteria)DataSourceSheet添加应用于数据源工作表的过滤条件。
asSheet()Sheet以常规工作表对象的形式返回数据源工作表。
autoResizeColumn(columnName)DataSourceSheet自动调整指定列的宽度。
autoResizeColumns(columnNames)DataSourceSheet自动调整指定列的宽度。
cancelDataRefresh()DataSourceSheet取消与此对象关联的数据刷新(如果当前正在运行)。
forceRefreshData()DataSourceSheet刷新此对象的数据,无论当前状态如何。
getColumnWidth(columnName)Integer|null返回指定列的宽度。
getDataSource()DataSource获取对象所关联的数据源。
getFilters()DataSourceSheetFilter[]返回应用于数据源工作表的所有过滤条件。
getSheetValues(columnName)Object[]返回数据源工作表中指定列名的所有值。
getSheetValues(columnName, startRow, numRows)Object[]从提供的起始行(从 1 开始)开始,返回数据源工作表中提供的列名称的所有值,直至提供的 numRows
getSortSpecs()SortSpec[]获取数据源工作表中的所有排序规范。
getStatus()DataExecutionStatus获取对象的数据执行状态。
refreshData()DataSourceSheet刷新对象的数据。
removeFilters(columnName)DataSourceSheet移除应用于数据源工作表列的所有过滤条件。
removeSortSpec(columnName)DataSourceSheet移除数据源工作表中列的排序规范。
setColumnWidth(columnName, width)DataSourceSheet设置指定列的宽度。
setColumnWidths(columnNames, width)DataSourceSheet设置指定列的宽度。
setSortSpec(columnName, ascending)DataSourceSheet在数据源工作表中设置列的排序规范。
setSortSpec(columnName, sortOrder)DataSourceSheet在数据源工作表中设置列的排序规范。
waitForCompletion(timeoutInSeconds)DataExecutionStatus等待当前执行完成,并在指定秒数后超时。

详细文档

addFilter(columnName, filterCriteria)

添加应用于数据源工作表的过滤条件。

参数

名称类型说明
columnNameString要应用相应过滤条件的列的名称。
filterCriteriaFilterCriteria要应用的过滤条件。

返回

DataSourceSheet - 用于方法链的数据源工作表。

授权

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

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

asSheet()

以常规工作表对象的形式返回数据源工作表。

返回

Sheet - 常规工作表。

授权

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

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

autoResizeColumn(columnName)

自动调整指定列的宽度。

参数

名称类型说明
columnNameString列名称。

返回

DataSourceSheet - 用于链接的此数据源工作表。

授权

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

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

autoResizeColumns(columnNames)

自动调整指定列的宽度。

参数

名称类型说明
columnNamesString[]要更新的列名称的列表。

返回

DataSourceSheet - 用于链接的此数据源工作表。

授权

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

  • 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() 方法可为特定数据源类型启用数据执行。

返回

DataSourceSheet - 数据对象。

授权

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

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

forceRefreshData()

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

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

返回

DataSourceSheet - 数据对象。

授权

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

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

getColumnWidth(columnName)

返回指定列的宽度。

参数

名称类型说明
columnNameString列名称。

返回

Integer|null - 列的宽度,如果列使用默认宽度,则为 null

授权

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

  • 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

getFilters()

返回应用于数据源工作表的所有过滤条件。

返回

DataSourceSheetFilter[] - 应用于数据源工作表的所有过滤条件的数组。

授权

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

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

getSheetValues(columnName)

返回数据源工作表中指定列名的所有值。

参数

名称类型说明
columnNameString要提取值的数据源列名称。

返回

Object[] - 一维值数组。

授权

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

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

getSheetValues(columnName, startRow, numRows)

从提供的起始行(从 1 开始)开始,返回数据源工作表中提供的列名称的所有值,直至提供的 numRows

参数

名称类型说明
columnNameString要提取值的数据源列名称。
startRowInteger开始提取值的行位置。
numRowsInteger要提取的行数。

返回

Object[] - 一维值数组。

授权

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

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

getSortSpecs()

获取数据源工作表中的所有排序规范。

返回

SortSpec[] - 排序规范列表。

授权

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

  • 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() 方法可为特定数据源类型启用数据执行。

返回

DataSourceSheet - 数据对象。

授权

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

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

removeFilters(columnName)

移除应用于数据源工作表列的所有过滤条件。

参数

名称类型说明
columnNameString要移除过滤条件的列的名称。

返回

DataSourceSheet - 用于方法链的数据源工作表。

授权

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

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

removeSortSpec(columnName)

移除数据源工作表中列的排序规范。

参数

名称类型说明
columnNameString列的名称。

返回

DataSourceSheet - 用于链接的数据源工作表。

授权

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

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

setColumnWidth(columnName, width)

设置指定列的宽度。

参数

名称类型说明
columnNameString列名称。
widthInteger列的新宽度。

返回

DataSourceSheet - 用于链接的此数据源工作表。

授权

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

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

setColumnWidths(columnNames, width)

设置指定列的宽度。

参数

名称类型说明
columnNamesString[]要更新的列名称的列表。
widthInteger列的新宽度。

返回

DataSourceSheet - 用于链接的此数据源工作表。

授权

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

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

setSortSpec(columnName, ascending)

在数据源工作表中设置列的排序规范。

参数

名称类型说明
columnNameString要排序的列的名称。
ascendingBoolean如果值为 true,则按升序对列进行排序;如果值为 false,则按降序对列进行排序。

返回

DataSourceSheet - 用于链接的数据源工作表。

授权

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

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

setSortSpec(columnName, sortOrder)

在数据源工作表中设置列的排序规范。

参数

名称类型说明
columnNameString要排序的列的名称。
sortOrderSortOrder排序顺序。

返回

DataSourceSheet - 用于链接的数据源工作表。

授权

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

  • 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