Method: spreadsheets.values.batchUpdateByDataFilter

在試算表的一或多個範圍中設定值。呼叫端必須指定試算表 ID、valueInputOption 及一或多個 DataFilterValueRanges

HTTP 要求

POST https://sheets.googleapis.com/v4/spreadsheets/{spreadsheetId}/values:batchUpdateByDataFilter

這個網址使用 gRPC 轉碼語法。

路徑參數

參數
spreadsheetId

string

要更新的試算表 ID。

要求主體

要求主體的資料會採用以下結構:

JSON 表示法
{
  "valueInputOption": enum (ValueInputOption),
  "data": [
    {
      object (DataFilterValueRange)
    }
  ],
  "includeValuesInResponse": boolean,
  "responseValueRenderOption": enum (ValueRenderOption),
  "responseDateTimeRenderOption": enum (DateTimeRenderOption)
}
欄位
valueInputOption

enum (ValueInputOption)

系統如何解讀輸入資料。

data[]

object (DataFilterValueRange)

要套用至試算表的新值。如果有多個值與指定的 DataFilter 相符,則指定值會套用到所有範圍。

includeValuesInResponse

boolean

決定更新回應是否應包含已更新的儲存格值。根據預設,回應不包含更新後的值。每個 BatchUpdateValuesResponse.responses 中的 updatedData 欄位均包含更新後的值。如果寫入的範圍大於實際寫入的範圍,則回應會納入要求範圍中的所有值 (結尾的空白列和欄除外)。

responseValueRenderOption

enum (ValueRenderOption)

決定回應中的值呈現方式。預設的轉譯選項為 FORMATTED_VALUE

responseDateTimeRenderOption

enum (DateTimeRenderOption)

決定如何轉譯回應中的日期、時間和時間長度。如果 responseValueRenderOptionFORMATTED_VALUE,系統會忽略這則訊息。預設的 dateTime 轉譯選項為 SERIAL_NUMBER

回應主體

更新試算表中某個值範圍的回應。

如果成功,回應主體即會包含具有以下結構的資料:

JSON 表示法
{
  "spreadsheetId": string,
  "totalUpdatedRows": integer,
  "totalUpdatedColumns": integer,
  "totalUpdatedCells": integer,
  "totalUpdatedSheets": integer,
  "responses": [
    {
      object (UpdateValuesByDataFilterResponse)
    }
  ]
}
欄位
spreadsheetId

string

套用更新的試算表。

totalUpdatedRows

integer

資料列中至少有一個儲存格已更新的資料列總數。

totalUpdatedColumns

integer

更新至少一個欄中的儲存格總數。

totalUpdatedCells

integer

更新的儲存格總數。

totalUpdatedSheets

integer

工作表中至少有一個儲存格已更新的工作表總數。

responses[]

object (UpdateValuesByDataFilterResponse)

每個範圍的回應均已更新。

授權範圍

需要下列其中一種 OAuth 範圍:

  • https://www.googleapis.com/auth/drive
  • https://www.googleapis.com/auth/drive.file
  • https://www.googleapis.com/auth/spreadsheets

詳情請參閱授權指南

資料篩選器值範圍

位置值的範圍,以 DataFilter 指定。

JSON 表示法
{
  "dataFilter": {
    object (DataFilter)
  },
  "majorDimension": enum (Dimension),
  "values": [
    array
  ]
}
欄位
dataFilter

object (DataFilter)

資料篩選器,用於說明試算表中值的位置。

majorDimension

enum (Dimension)

值的主要維度。

values[]

array (ListValue format)

要寫入的資料。如果提供的值超過資料篩選器所比對的任何範圍,要求就會失敗。如果提供的值小於指定範圍,只會寫入指定值,相符範圍中的現有值不會受到影響。

UpdateValuesByDataFilterResponse

在試算表中使用資料篩選器更新某個值範圍時的回應。

JSON 表示法
{
  "updatedRange": string,
  "updatedRows": integer,
  "updatedColumns": integer,
  "updatedCells": integer,
  "dataFilter": {
    object (DataFilter)
  },
  "updatedData": {
    object (ValueRange)
  }
}
欄位
updatedRange

string

要套用更新的範圍 (位於 A1 標記)。

updatedRows

integer

更新資料列中至少有一個儲存格的列數。

updatedColumns

integer

更新至少一個欄中的儲存格數。

updatedCells

integer

已更新的儲存格數量。

dataFilter

object (DataFilter)

所選資料範圍的更新篩選條件。

updatedData

object (ValueRange)

套用所有更新後,dataFilter 中與範圍相符的儲存格值。只有在要求的 includeValuesInResponse 欄位為 true 時,才會包含這個項目。