Bảng tính có thể có nhiều trang tính, với mỗi trang tính có bất kỳ số lượng hàng hoặc cột nào. Một ô là một vị trí tại giao điểm của một hàng và cột cụ thể và có thể chứa một giá trị dữ liệu. Google Sheets API cung cấp các bảng tính. bộ sưu tập giá trị để cho phép đọc và ghi giá trị đơn giản
Trang này mô tả những kiến thức cơ bản về cách sử dụng bảng tính. bộ sưu tập giá trị. Nếu bạn cần cập nhật định dạng hoặc các thuộc tính khác trong trang tính, bạn sẽ cần sử dụng bộ sưu tập bảng tính, được mô tả trong Cập nhật bảng tính
phương pháp
bảng tính. bộ sưu tập các giá trị cung cấp các phương thức sau để đọc và ghi các giá trị, mỗi phương thức có một nhiệm vụ cụ thể
Truy cập phạm viĐọcViếtBảng tính phạm vi đơn. giá trị. bảng tính. giá trị. cập nhậtNhiều bảng tính phạm vi. giá trị. hàng loạtNhận bảng tính. giá trị. batchUpdateAppendingbảng tính. giá trị. nối thêmNói chung, bạn nên kết hợp nhiều lần đọc hoặc cập nhật với các phương thức batchGet và batchUpdate [tương ứng], vì điều này sẽ cải thiện hiệu quả
Bạn có thể tìm thấy các ví dụ về từng phương pháp này trong các trang mẫu về Đọc cơ bản và Viết cơ bản
Đọc
Để đọc dữ liệu từ một trang tính, bạn sẽ cần ID bảng tính và [các] phạm vi ký hiệu A1. Để biết thêm thông tin về ID bảng tính và ký hiệu A1, hãy xem Các khái niệm chính trong API Google Trang tính. Định dạng của đầu ra được kiểm soát bởi ba tham số tùy chọn
Tham số định dạng Giá trị mặc định chínhMajorDimensionROWSvalueRenderOptionFORMATTED_VALUEdateTimeRenderOptionSERIAL_NUMBERLưu ý rằng
/** * Gets cell values from a Spreadsheet. * @param {string} spreadsheetId The spreadsheet ID. * @param {string} range The sheet range. * @return {obj} spreadsheet information */ async function getValues[spreadsheetId, range] { const {GoogleAuth} = require['google-auth-library']; const {google} = require['googleapis']; const auth = new GoogleAuth[{ scopes: '//www.googleapis.com/auth/spreadsheets', }]; const service = google.sheets[{version: 'v4', auth}]; try { const result = await service.spreadsheets.values.get[{ spreadsheetId, range, }]; const numRows = result.data.values ? result.data.values.length : 0; console.log[`${numRows} rows retrieved.`]; return result; } catch [err] { // TODO [developer] - Handle exception throw err; } }5 chỉ được sử dụng nếu
/** * Gets cell values from a Spreadsheet. * @param {string} spreadsheetId The spreadsheet ID. * @param {string} range The sheet range. * @return {obj} spreadsheet information */ async function getValues[spreadsheetId, range] { const {GoogleAuth} = require['google-auth-library']; const {google} = require['googleapis']; const auth = new GoogleAuth[{ scopes: '//www.googleapis.com/auth/spreadsheets', }]; const service = google.sheets[{version: 'v4', auth}]; try { const result = await service.spreadsheets.values.get[{ spreadsheetId, range, }]; const numRows = result.data.values ? result.data.values.length : 0; console.log[`${numRows} rows retrieved.`]; return result; } catch [err] { // TODO [developer] - Handle exception throw err; } }6 không phải là
/** * Gets cell values from a Spreadsheet. * @param {string} spreadsheetId The spreadsheet ID. * @param {string} range The sheet range. * @return {obj} spreadsheet information */ async function getValues[spreadsheetId, range] { const {GoogleAuth} = require['google-auth-library']; const {google} = require['googleapis']; const auth = new GoogleAuth[{ scopes: '//www.googleapis.com/auth/spreadsheets', }]; const service = google.sheets[{version: 'v4', auth}]; try { const result = await service.spreadsheets.values.get[{ spreadsheetId, range, }]; const numRows = result.data.values ? result.data.values.length : 0; console.log[`${numRows} rows retrieved.`]; return result; } catch [err] { // TODO [developer] - Handle exception throw err; } }7
Các phương thức nhận số ít và hàng loạt được mô tả bên dưới. Để biết ví dụ về các thao tác đọc cơ bản, hãy xem trang Công thức đọc cơ bản
Đọc một phạm vi duy nhất
Để đọc một phạm vi dữ liệu trong một bảng tính, hãy sử dụng bảng tính. giá trị. nhận yêu cầu
trang tính/api/bảng tính_snippets. gs Xem trên GitHubtập lệnh ứng dụng
/**
* Gets the values of the cells in the specified range
* @param {string} spreadsheetId id of the spreadsheet
* @param {string} range specifying the start and end cells of the range
* @returns {*} Values in the range
*/
Snippets.prototype.getValues = function[spreadsheetId, range] {
// This code uses the Sheets Advanced Service, but for most use cases
// the built-in method SpreadsheetApp.getActiveSpreadsheet[]
// .getRange[range].getValues[values] is more appropriate.
try {
const result = Sheets.Spreadsheets.Values.get[spreadsheetId, range];
const numRows = result.values ? result.values.length : 0;
return result;
} catch [err] {
// TODO [developer] - Handle exception
console.log['Failed with error %s', err.message];
}
};
Java
trang tính/đoạn mã/src/chính/java/GetValues. java
Xem trên GitHub
import com.google.api.client.googleapis.json.GoogleJsonError; import com.google.api.client.googleapis.json.GoogleJsonResponseException; import com.google.api.client.http.HttpRequestInitializer; import com.google.api.client.http.javanet.NetHttpTransport; import com.google.api.client.json.gson.GsonFactory; import com.google.api.services.sheets.v4.Sheets; import com.google.api.services.sheets.v4.SheetsScopes; import com.google.api.services.sheets.v4.model.ValueRange; import com.google.auth.http.HttpCredentialsAdapter; import com.google.auth.oauth2.GoogleCredentials; import java.io.IOException; import java.util.Collections; /* Class to demonstrate the use of Spreadsheet Get Values API */ public class GetValues { /** * Returns a range of values from a spreadsheet. * * @param spreadsheetId - Id of the spreadsheet. * @param range - Range of cells of the spreadsheet. * @return Values in the range * @throws IOException - if credentials file not found. */ public static ValueRange getValues[String spreadsheetId, String range] throws IOException { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ GoogleCredentials credentials = GoogleCredentials.getApplicationDefault[] .createScoped[Collections.singleton[SheetsScopes.SPREADSHEETS]]; HttpRequestInitializer requestInitializer = new HttpCredentialsAdapter[ credentials]; // Create the sheets API client Sheets service = new Sheets.Builder[new NetHttpTransport[], GsonFactory.getDefaultInstance[], requestInitializer] .setApplicationName["Sheets samples"] .build[]; ValueRange result = null; try { // Gets the values of the cells in the specified range. result = service.spreadsheets[].values[].get[spreadsheetId, range].execute[]; int numRows = result.getValues[] != null ? result.getValues[].size[] : 0; System.out.printf["%d rows retrieved.", numRows]; } catch [GoogleJsonResponseException e] { // TODO[developer] - handle error appropriately GoogleJsonError error = e.getDetails[]; if [error.getCode[] == 404] { System.out.printf["Spreadsheet not found with id '%s'.\n", spreadsheetId]; } else { throw e; } } return result; } }
JavaScript
trang tính/đoạn mã/sheet_get_values. js
Xem trên GitHub
function getValues[spreadsheetId, range, callback] { try { gapi.client.sheets.spreadsheets.values.get[{ spreadsheetId: spreadsheetId, range: range, }].then[[response] => { const result = response.result; const numRows = result.values ? result.values.length : 0; console.log[`${numRows} rows retrieved.`]; if [callback] callback[response]; }]; } catch [err] { document.getElementById['content'].innerText = err.message; return; } }
Nút. js
trang tính/đoạn mã/sheet_get_values. js
Xem trên GitHub
/** * Gets cell values from a Spreadsheet. * @param {string} spreadsheetId The spreadsheet ID. * @param {string} range The sheet range. * @return {obj} spreadsheet information */ async function getValues[spreadsheetId, range] { const {GoogleAuth} = require['google-auth-library']; const {google} = require['googleapis']; const auth = new GoogleAuth[{ scopes: '//www.googleapis.com/auth/spreadsheets', }]; const service = google.sheets[{version: 'v4', auth}]; try { const result = await service.spreadsheets.values.get[{ spreadsheetId, range, }]; const numRows = result.data.values ? result.data.values.length : 0; console.log[`${numRows} rows retrieved.`]; return result; } catch [err] { // TODO [developer] - Handle exception throw err; } }
PHP
trang tính/đoạn mã/src/Bảng tínhGetValues. php
Xem trên GitHub
use Google\Client; use Google\Service\Drive; use Google\Service\Sheets\BatchUpdateSpreadsheetRequest; /** * get values of a particular spreadsheet[by Id and range]. */ function getValues[$spreadsheetId, $range] { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ $client = new Google\Client[]; $client->useApplicationDefaultCredentials[]; $client->addScope[Google\Service\Drive::DRIVE]; $service = new Google_Service_Sheets[$client]; $result = $service->spreadsheets_values->get[$spreadsheetId, $range]; try{ $numRows = $result->getValues[] != null ? count[$result->getValues[]] : 0; printf["%d rows retrieved.", $numRows]; return $result; } catch[Exception $e] { // TODO[developer] - handle error appropriately echo 'Message: ' .$e->getMessage[]; } }
con trăn
trang tính/đoạn mã/sheet_get_values. py
Xem trên GitHub
________số 8
hồng ngọc
trang tính/đoạn trích/thư viện/đoạn trích bảng tính. rb
Xem trên GitHub
result = service.get_spreadsheet_values[spreadsheet_id, range_name] num_rows = result.values ? result.values.length : 0 puts "#{num_rows} rows received."
Phản hồi cho yêu cầu này được trả về dưới dạng đối tượng ValueRange
Đọc nhiều phạm vi
Để đọc nhiều phạm vi không liên tục, hãy sử dụng bảng tính. giá trị. batchGet, cho phép bạn chỉ định bất kỳ số lượng phạm vi nào để truy xuất
trang tính/api/bảng tính_snippets. gs Xem trên GitHubtập lệnh ứng dụng
/** * Gets cell values from a Spreadsheet. * @param {string} spreadsheetId The spreadsheet ID. * @param {string} range The sheet range. * @return {obj} spreadsheet information */ async function getValues[spreadsheetId, range] { const {GoogleAuth} = require['google-auth-library']; const {google} = require['googleapis']; const auth = new GoogleAuth[{ scopes: '//www.googleapis.com/auth/spreadsheets', }]; const service = google.sheets[{version: 'v4', auth}]; try { const result = await service.spreadsheets.values.get[{ spreadsheetId, range, }]; const numRows = result.data.values ? result.data.values.length : 0; console.log[`${numRows} rows retrieved.`]; return result; } catch [err] { // TODO [developer] - Handle exception throw err; } }0
Java
trang tính/đoạn mã/src/chính/java/BatchGetValues. java
Xem trên GitHub
/** * Gets cell values from a Spreadsheet. * @param {string} spreadsheetId The spreadsheet ID. * @param {string} range The sheet range. * @return {obj} spreadsheet information */ async function getValues[spreadsheetId, range] { const {GoogleAuth} = require['google-auth-library']; const {google} = require['googleapis']; const auth = new GoogleAuth[{ scopes: '//www.googleapis.com/auth/spreadsheets', }]; const service = google.sheets[{version: 'v4', auth}]; try { const result = await service.spreadsheets.values.get[{ spreadsheetId, range, }]; const numRows = result.data.values ? result.data.values.length : 0; console.log[`${numRows} rows retrieved.`]; return result; } catch [err] { // TODO [developer] - Handle exception throw err; } }1
JavaScript
trang tính/đoạn mã/sheets_batch_get_values. js
Xem trên GitHub
/** * Gets cell values from a Spreadsheet. * @param {string} spreadsheetId The spreadsheet ID. * @param {string} range The sheet range. * @return {obj} spreadsheet information */ async function getValues[spreadsheetId, range] { const {GoogleAuth} = require['google-auth-library']; const {google} = require['googleapis']; const auth = new GoogleAuth[{ scopes: '//www.googleapis.com/auth/spreadsheets', }]; const service = google.sheets[{version: 'v4', auth}]; try { const result = await service.spreadsheets.values.get[{ spreadsheetId, range, }]; const numRows = result.data.values ? result.data.values.length : 0; console.log[`${numRows} rows retrieved.`]; return result; } catch [err] { // TODO [developer] - Handle exception throw err; } }2
Nút. js
trang tính/đoạn mã/sheets_batch_get_values. js
Xem trên GitHub
import com.google.api.client.googleapis.json.GoogleJsonError; import com.google.api.client.googleapis.json.GoogleJsonResponseException; import com.google.api.client.http.HttpRequestInitializer; import com.google.api.client.http.javanet.NetHttpTransport; import com.google.api.client.json.gson.GsonFactory; import com.google.api.services.sheets.v4.Sheets; import com.google.api.services.sheets.v4.SheetsScopes; import com.google.api.services.sheets.v4.model.ValueRange; import com.google.auth.http.HttpCredentialsAdapter; import com.google.auth.oauth2.GoogleCredentials; import java.io.IOException; import java.util.Collections; /* Class to demonstrate the use of Spreadsheet Get Values API */ public class GetValues { /** * Returns a range of values from a spreadsheet. * * @param spreadsheetId - Id of the spreadsheet. * @param range - Range of cells of the spreadsheet. * @return Values in the range * @throws IOException - if credentials file not found. */ public static ValueRange getValues[String spreadsheetId, String range] throws IOException { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ GoogleCredentials credentials = GoogleCredentials.getApplicationDefault[] .createScoped[Collections.singleton[SheetsScopes.SPREADSHEETS]]; HttpRequestInitializer requestInitializer = new HttpCredentialsAdapter[ credentials]; // Create the sheets API client Sheets service = new Sheets.Builder[new NetHttpTransport[], GsonFactory.getDefaultInstance[], requestInitializer] .setApplicationName["Sheets samples"] .build[]; ValueRange result = null; try { // Gets the values of the cells in the specified range. result = service.spreadsheets[].values[].get[spreadsheetId, range].execute[]; int numRows = result.getValues[] != null ? result.getValues[].size[] : 0; System.out.printf["%d rows retrieved.", numRows]; } catch [GoogleJsonResponseException e] { // TODO[developer] - handle error appropriately GoogleJsonError error = e.getDetails[]; if [error.getCode[] == 404] { System.out.printf["Spreadsheet not found with id '%s'.\n", spreadsheetId]; } else { throw e; } } return result; } }0
PHP
trang tính/đoạn trích/src/Bảng tínhBatchGetValues. php
Xem trên GitHub
import com.google.api.client.googleapis.json.GoogleJsonError; import com.google.api.client.googleapis.json.GoogleJsonResponseException; import com.google.api.client.http.HttpRequestInitializer; import com.google.api.client.http.javanet.NetHttpTransport; import com.google.api.client.json.gson.GsonFactory; import com.google.api.services.sheets.v4.Sheets; import com.google.api.services.sheets.v4.SheetsScopes; import com.google.api.services.sheets.v4.model.ValueRange; import com.google.auth.http.HttpCredentialsAdapter; import com.google.auth.oauth2.GoogleCredentials; import java.io.IOException; import java.util.Collections; /* Class to demonstrate the use of Spreadsheet Get Values API */ public class GetValues { /** * Returns a range of values from a spreadsheet. * * @param spreadsheetId - Id of the spreadsheet. * @param range - Range of cells of the spreadsheet. * @return Values in the range * @throws IOException - if credentials file not found. */ public static ValueRange getValues[String spreadsheetId, String range] throws IOException { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ GoogleCredentials credentials = GoogleCredentials.getApplicationDefault[] .createScoped[Collections.singleton[SheetsScopes.SPREADSHEETS]]; HttpRequestInitializer requestInitializer = new HttpCredentialsAdapter[ credentials]; // Create the sheets API client Sheets service = new Sheets.Builder[new NetHttpTransport[], GsonFactory.getDefaultInstance[], requestInitializer] .setApplicationName["Sheets samples"] .build[]; ValueRange result = null; try { // Gets the values of the cells in the specified range. result = service.spreadsheets[].values[].get[spreadsheetId, range].execute[]; int numRows = result.getValues[] != null ? result.getValues[].size[] : 0; System.out.printf["%d rows retrieved.", numRows]; } catch [GoogleJsonResponseException e] { // TODO[developer] - handle error appropriately GoogleJsonError error = e.getDetails[]; if [error.getCode[] == 404] { System.out.printf["Spreadsheet not found with id '%s'.\n", spreadsheetId]; } else { throw e; } } return result; } }1
con trăn
trang tính/đoạn mã/sheets_batch_get_values. py
Xem trên GitHub
import com.google.api.client.googleapis.json.GoogleJsonError; import com.google.api.client.googleapis.json.GoogleJsonResponseException; import com.google.api.client.http.HttpRequestInitializer; import com.google.api.client.http.javanet.NetHttpTransport; import com.google.api.client.json.gson.GsonFactory; import com.google.api.services.sheets.v4.Sheets; import com.google.api.services.sheets.v4.SheetsScopes; import com.google.api.services.sheets.v4.model.ValueRange; import com.google.auth.http.HttpCredentialsAdapter; import com.google.auth.oauth2.GoogleCredentials; import java.io.IOException; import java.util.Collections; /* Class to demonstrate the use of Spreadsheet Get Values API */ public class GetValues { /** * Returns a range of values from a spreadsheet. * * @param spreadsheetId - Id of the spreadsheet. * @param range - Range of cells of the spreadsheet. * @return Values in the range * @throws IOException - if credentials file not found. */ public static ValueRange getValues[String spreadsheetId, String range] throws IOException { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ GoogleCredentials credentials = GoogleCredentials.getApplicationDefault[] .createScoped[Collections.singleton[SheetsScopes.SPREADSHEETS]]; HttpRequestInitializer requestInitializer = new HttpCredentialsAdapter[ credentials]; // Create the sheets API client Sheets service = new Sheets.Builder[new NetHttpTransport[], GsonFactory.getDefaultInstance[], requestInitializer] .setApplicationName["Sheets samples"] .build[]; ValueRange result = null; try { // Gets the values of the cells in the specified range. result = service.spreadsheets[].values[].get[spreadsheetId, range].execute[]; int numRows = result.getValues[] != null ? result.getValues[].size[] : 0; System.out.printf["%d rows retrieved.", numRows]; } catch [GoogleJsonResponseException e] { // TODO[developer] - handle error appropriately GoogleJsonError error = e.getDetails[]; if [error.getCode[] == 404] { System.out.printf["Spreadsheet not found with id '%s'.\n", spreadsheetId]; } else { throw e; } } return result; } }2
hồng ngọc
trang tính/đoạn trích/thư viện/đoạn trích bảng tính. rb
Xem trên GitHub
import com.google.api.client.googleapis.json.GoogleJsonError; import com.google.api.client.googleapis.json.GoogleJsonResponseException; import com.google.api.client.http.HttpRequestInitializer; import com.google.api.client.http.javanet.NetHttpTransport; import com.google.api.client.json.gson.GsonFactory; import com.google.api.services.sheets.v4.Sheets; import com.google.api.services.sheets.v4.SheetsScopes; import com.google.api.services.sheets.v4.model.ValueRange; import com.google.auth.http.HttpCredentialsAdapter; import com.google.auth.oauth2.GoogleCredentials; import java.io.IOException; import java.util.Collections; /* Class to demonstrate the use of Spreadsheet Get Values API */ public class GetValues { /** * Returns a range of values from a spreadsheet. * * @param spreadsheetId - Id of the spreadsheet. * @param range - Range of cells of the spreadsheet. * @return Values in the range * @throws IOException - if credentials file not found. */ public static ValueRange getValues[String spreadsheetId, String range] throws IOException { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ GoogleCredentials credentials = GoogleCredentials.getApplicationDefault[] .createScoped[Collections.singleton[SheetsScopes.SPREADSHEETS]]; HttpRequestInitializer requestInitializer = new HttpCredentialsAdapter[ credentials]; // Create the sheets API client Sheets service = new Sheets.Builder[new NetHttpTransport[], GsonFactory.getDefaultInstance[], requestInitializer] .setApplicationName["Sheets samples"] .build[]; ValueRange result = null; try { // Gets the values of the cells in the specified range. result = service.spreadsheets[].values[].get[spreadsheetId, range].execute[]; int numRows = result.getValues[] != null ? result.getValues[].size[] : 0; System.out.printf["%d rows retrieved.", numRows]; } catch [GoogleJsonResponseException e] { // TODO[developer] - handle error appropriately GoogleJsonError error = e.getDetails[]; if [error.getCode[] == 404] { System.out.printf["Spreadsheet not found with id '%s'.\n", spreadsheetId]; } else { throw e; } } return result; } }3
Phản hồi cho yêu cầu này là BatchGetValueResponse, đối tượng chứa ID bảng tính và danh sách các đối tượng ValueRange
Viết
Để ghi vào một trang tính, bạn sẽ cần ID bảng tính, [các] phạm vi trong ký hiệu A1 và dữ liệu bạn muốn ghi được sắp xếp trong một đối tượng nội dung yêu cầu thích hợp. Để biết thêm thông tin về ID bảng tính và ký hiệu A1, hãy xem Các khái niệm chính trong API Google Trang tính
Các bản cập nhật yêu cầu tham số ValueInputOption hợp lệ [đối với các bản cập nhật đơn lẻ, đây là tham số truy vấn bắt buộc; đối với các bản cập nhật hàng loạt, tham số này bắt buộc phải có trong phần thân yêu cầu]. ValueInputOption kiểm soát xem các chuỗi đầu vào có được phân tích cú pháp hay không, như được mô tả trong bảng sau
ValueInputOptionDescription/** * Gets cell values from a Spreadsheet. * @param {string} spreadsheetId The spreadsheet ID. * @param {string} range The sheet range. * @return {obj} spreadsheet information */ async function getValues[spreadsheetId, range] { const {GoogleAuth} = require['google-auth-library']; const {google} = require['googleapis']; const auth = new GoogleAuth[{ scopes: '//www.googleapis.com/auth/spreadsheets', }]; const service = google.sheets[{version: 'v4', auth}]; try { const result = await service.spreadsheets.values.get[{ spreadsheetId, range, }]; const numRows = result.data.values ? result.data.values.length : 0; console.log[`${numRows} rows retrieved.`]; return result; } catch [err] { // TODO [developer] - Handle exception throw err; } }8Đầu vào không được phân tích cú pháp và chỉ được chèn dưới dạng một chuỗi, vì vậy đầu vào "=1+2" đặt chuỗi "=1+2" vào ô, không phải công thức. [Các giá trị không phải chuỗi như boolean hoặc số luôn được xử lý dưới dạng
/** * Gets cell values from a Spreadsheet. * @param {string} spreadsheetId The spreadsheet ID. * @param {string} range The sheet range. * @return {obj} spreadsheet information */ async function getValues[spreadsheetId, range] { const {GoogleAuth} = require['google-auth-library']; const {google} = require['googleapis']; const auth = new GoogleAuth[{ scopes: '//www.googleapis.com/auth/spreadsheets', }]; const service = google.sheets[{version: 'v4', auth}]; try { const result = await service.spreadsheets.values.get[{ spreadsheetId, range, }]; const numRows = result.data.values ? result.data.values.length : 0; console.log[`${numRows} rows retrieved.`]; return result; } catch [err] { // TODO [developer] - Handle exception throw err; } }8. ]
use Google\Client; use Google\Service\Drive; use Google\Service\Sheets\BatchUpdateSpreadsheetRequest; /** * get values of a particular spreadsheet[by Id and range]. */ function getValues[$spreadsheetId, $range] { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ $client = new Google\Client[]; $client->useApplicationDefaultCredentials[]; $client->addScope[Google\Service\Drive::DRIVE]; $service = new Google_Service_Sheets[$client]; $result = $service->spreadsheets_values->get[$spreadsheetId, $range]; try{ $numRows = $result->getValues[] != null ? count[$result->getValues[]] : 0; printf["%d rows retrieved.", $numRows]; return $result; } catch[Exception $e] { // TODO[developer] - handle error appropriately echo 'Message: ' .$e->getMessage[]; } }0Đầu vào được phân tích cú pháp chính xác như thể nó được nhập vào Giao diện người dùng Google Trang tính, vì vậy "ngày 1 tháng 3 năm 2016" trở thành một ngày và "=1+2" trở thành một công thức. Các định dạng cũng có thể được suy ra, vì vậy "$100. 15" trở thành số có định dạng tiền tệ
Các phương pháp cập nhật đơn lẻ và hàng loạt được mô tả bên dưới. Để biết ví dụ về các thao tác viết cơ bản, hãy xem trang Công thức viết cơ bản
Ghi vào một phạm vi duy nhất
Để ghi dữ liệu vào một phạm vi duy nhất, hãy sử dụng bảng tính. giá trị. yêu cầu cập nhật
trang tính/api/bảng tính_snippets. gs Xem trên GitHubtập lệnh ứng dụng
import com.google.api.client.googleapis.json.GoogleJsonError;
import com.google.api.client.googleapis.json.GoogleJsonResponseException;
import com.google.api.client.http.HttpRequestInitializer;
import com.google.api.client.http.javanet.NetHttpTransport;
import com.google.api.client.json.gson.GsonFactory;
import com.google.api.services.sheets.v4.Sheets;
import com.google.api.services.sheets.v4.SheetsScopes;
import com.google.api.services.sheets.v4.model.ValueRange;
import com.google.auth.http.HttpCredentialsAdapter;
import com.google.auth.oauth2.GoogleCredentials;
import java.io.IOException;
import java.util.Collections;
/* Class to demonstrate the use of Spreadsheet Get Values API */
public class GetValues {
/**
* Returns a range of values from a spreadsheet.
*
* @param spreadsheetId - Id of the spreadsheet.
* @param range - Range of cells of the spreadsheet.
* @return Values in the range
* @throws IOException - if credentials file not found.
*/
public static ValueRange getValues[String spreadsheetId, String range] throws IOException {
/* Load pre-authorized user credentials from the environment.
TODO[developer] - See //developers.google.com/identity for
guides on implementing OAuth2 for your application. */
GoogleCredentials credentials = GoogleCredentials.getApplicationDefault[]
.createScoped[Collections.singleton[SheetsScopes.SPREADSHEETS]];
HttpRequestInitializer requestInitializer = new HttpCredentialsAdapter[
credentials];
// Create the sheets API client
Sheets service = new Sheets.Builder[new NetHttpTransport[],
GsonFactory.getDefaultInstance[],
requestInitializer]
.setApplicationName["Sheets samples"]
.build[];
ValueRange result = null;
try {
// Gets the values of the cells in the specified range.
result = service.spreadsheets[].values[].get[spreadsheetId, range].execute[];
int numRows = result.getValues[] != null ? result.getValues[].size[] : 0;
System.out.printf["%d rows retrieved.", numRows];
} catch [GoogleJsonResponseException e] {
// TODO[developer] - handle error appropriately
GoogleJsonError error = e.getDetails[];
if [error.getCode[] == 404] {
System.out.printf["Spreadsheet not found with id '%s'.\n", spreadsheetId];
} else {
throw e;
}
}
return result;
}
}
4
Java
trang tính/đoạn mã/src/chính/java/UpdateValues. java
Xem trên GitHub
import com.google.api.client.googleapis.json.GoogleJsonError; import com.google.api.client.googleapis.json.GoogleJsonResponseException; import com.google.api.client.http.HttpRequestInitializer; import com.google.api.client.http.javanet.NetHttpTransport; import com.google.api.client.json.gson.GsonFactory; import com.google.api.services.sheets.v4.Sheets; import com.google.api.services.sheets.v4.SheetsScopes; import com.google.api.services.sheets.v4.model.ValueRange; import com.google.auth.http.HttpCredentialsAdapter; import com.google.auth.oauth2.GoogleCredentials; import java.io.IOException; import java.util.Collections; /* Class to demonstrate the use of Spreadsheet Get Values API */ public class GetValues { /** * Returns a range of values from a spreadsheet. * * @param spreadsheetId - Id of the spreadsheet. * @param range - Range of cells of the spreadsheet. * @return Values in the range * @throws IOException - if credentials file not found. */ public static ValueRange getValues[String spreadsheetId, String range] throws IOException { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ GoogleCredentials credentials = GoogleCredentials.getApplicationDefault[] .createScoped[Collections.singleton[SheetsScopes.SPREADSHEETS]]; HttpRequestInitializer requestInitializer = new HttpCredentialsAdapter[ credentials]; // Create the sheets API client Sheets service = new Sheets.Builder[new NetHttpTransport[], GsonFactory.getDefaultInstance[], requestInitializer] .setApplicationName["Sheets samples"] .build[]; ValueRange result = null; try { // Gets the values of the cells in the specified range. result = service.spreadsheets[].values[].get[spreadsheetId, range].execute[]; int numRows = result.getValues[] != null ? result.getValues[].size[] : 0; System.out.printf["%d rows retrieved.", numRows]; } catch [GoogleJsonResponseException e] { // TODO[developer] - handle error appropriately GoogleJsonError error = e.getDetails[]; if [error.getCode[] == 404] { System.out.printf["Spreadsheet not found with id '%s'.\n", spreadsheetId]; } else { throw e; } } return result; } }5
JavaScript
trang tính/đoạn mã/sheet_update_values. js
Xem trên GitHub
import com.google.api.client.googleapis.json.GoogleJsonError; import com.google.api.client.googleapis.json.GoogleJsonResponseException; import com.google.api.client.http.HttpRequestInitializer; import com.google.api.client.http.javanet.NetHttpTransport; import com.google.api.client.json.gson.GsonFactory; import com.google.api.services.sheets.v4.Sheets; import com.google.api.services.sheets.v4.SheetsScopes; import com.google.api.services.sheets.v4.model.ValueRange; import com.google.auth.http.HttpCredentialsAdapter; import com.google.auth.oauth2.GoogleCredentials; import java.io.IOException; import java.util.Collections; /* Class to demonstrate the use of Spreadsheet Get Values API */ public class GetValues { /** * Returns a range of values from a spreadsheet. * * @param spreadsheetId - Id of the spreadsheet. * @param range - Range of cells of the spreadsheet. * @return Values in the range * @throws IOException - if credentials file not found. */ public static ValueRange getValues[String spreadsheetId, String range] throws IOException { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ GoogleCredentials credentials = GoogleCredentials.getApplicationDefault[] .createScoped[Collections.singleton[SheetsScopes.SPREADSHEETS]]; HttpRequestInitializer requestInitializer = new HttpCredentialsAdapter[ credentials]; // Create the sheets API client Sheets service = new Sheets.Builder[new NetHttpTransport[], GsonFactory.getDefaultInstance[], requestInitializer] .setApplicationName["Sheets samples"] .build[]; ValueRange result = null; try { // Gets the values of the cells in the specified range. result = service.spreadsheets[].values[].get[spreadsheetId, range].execute[]; int numRows = result.getValues[] != null ? result.getValues[].size[] : 0; System.out.printf["%d rows retrieved.", numRows]; } catch [GoogleJsonResponseException e] { // TODO[developer] - handle error appropriately GoogleJsonError error = e.getDetails[]; if [error.getCode[] == 404] { System.out.printf["Spreadsheet not found with id '%s'.\n", spreadsheetId]; } else { throw e; } } return result; } }6
Nút. js
trang tính/đoạn mã/sheet_update_values. js
Xem trên GitHub
import com.google.api.client.googleapis.json.GoogleJsonError; import com.google.api.client.googleapis.json.GoogleJsonResponseException; import com.google.api.client.http.HttpRequestInitializer; import com.google.api.client.http.javanet.NetHttpTransport; import com.google.api.client.json.gson.GsonFactory; import com.google.api.services.sheets.v4.Sheets; import com.google.api.services.sheets.v4.SheetsScopes; import com.google.api.services.sheets.v4.model.ValueRange; import com.google.auth.http.HttpCredentialsAdapter; import com.google.auth.oauth2.GoogleCredentials; import java.io.IOException; import java.util.Collections; /* Class to demonstrate the use of Spreadsheet Get Values API */ public class GetValues { /** * Returns a range of values from a spreadsheet. * * @param spreadsheetId - Id of the spreadsheet. * @param range - Range of cells of the spreadsheet. * @return Values in the range * @throws IOException - if credentials file not found. */ public static ValueRange getValues[String spreadsheetId, String range] throws IOException { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ GoogleCredentials credentials = GoogleCredentials.getApplicationDefault[] .createScoped[Collections.singleton[SheetsScopes.SPREADSHEETS]]; HttpRequestInitializer requestInitializer = new HttpCredentialsAdapter[ credentials]; // Create the sheets API client Sheets service = new Sheets.Builder[new NetHttpTransport[], GsonFactory.getDefaultInstance[], requestInitializer] .setApplicationName["Sheets samples"] .build[]; ValueRange result = null; try { // Gets the values of the cells in the specified range. result = service.spreadsheets[].values[].get[spreadsheetId, range].execute[]; int numRows = result.getValues[] != null ? result.getValues[].size[] : 0; System.out.printf["%d rows retrieved.", numRows]; } catch [GoogleJsonResponseException e] { // TODO[developer] - handle error appropriately GoogleJsonError error = e.getDetails[]; if [error.getCode[] == 404] { System.out.printf["Spreadsheet not found with id '%s'.\n", spreadsheetId]; } else { throw e; } } return result; } }7
PHP
trang tính/đoạn mã/src/Bảng tínhUpdateValues. php
Xem trên GitHub
import com.google.api.client.googleapis.json.GoogleJsonError; import com.google.api.client.googleapis.json.GoogleJsonResponseException; import com.google.api.client.http.HttpRequestInitializer; import com.google.api.client.http.javanet.NetHttpTransport; import com.google.api.client.json.gson.GsonFactory; import com.google.api.services.sheets.v4.Sheets; import com.google.api.services.sheets.v4.SheetsScopes; import com.google.api.services.sheets.v4.model.ValueRange; import com.google.auth.http.HttpCredentialsAdapter; import com.google.auth.oauth2.GoogleCredentials; import java.io.IOException; import java.util.Collections; /* Class to demonstrate the use of Spreadsheet Get Values API */ public class GetValues { /** * Returns a range of values from a spreadsheet. * * @param spreadsheetId - Id of the spreadsheet. * @param range - Range of cells of the spreadsheet. * @return Values in the range * @throws IOException - if credentials file not found. */ public static ValueRange getValues[String spreadsheetId, String range] throws IOException { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ GoogleCredentials credentials = GoogleCredentials.getApplicationDefault[] .createScoped[Collections.singleton[SheetsScopes.SPREADSHEETS]]; HttpRequestInitializer requestInitializer = new HttpCredentialsAdapter[ credentials]; // Create the sheets API client Sheets service = new Sheets.Builder[new NetHttpTransport[], GsonFactory.getDefaultInstance[], requestInitializer] .setApplicationName["Sheets samples"] .build[]; ValueRange result = null; try { // Gets the values of the cells in the specified range. result = service.spreadsheets[].values[].get[spreadsheetId, range].execute[]; int numRows = result.getValues[] != null ? result.getValues[].size[] : 0; System.out.printf["%d rows retrieved.", numRows]; } catch [GoogleJsonResponseException e] { // TODO[developer] - handle error appropriately GoogleJsonError error = e.getDetails[]; if [error.getCode[] == 404] { System.out.printf["Spreadsheet not found with id '%s'.\n", spreadsheetId]; } else { throw e; } } return result; } }8
con trăn
trang tính/đoạn mã/sheet_update_values. py
Xem trên GitHub
import com.google.api.client.googleapis.json.GoogleJsonError; import com.google.api.client.googleapis.json.GoogleJsonResponseException; import com.google.api.client.http.HttpRequestInitializer; import com.google.api.client.http.javanet.NetHttpTransport; import com.google.api.client.json.gson.GsonFactory; import com.google.api.services.sheets.v4.Sheets; import com.google.api.services.sheets.v4.SheetsScopes; import com.google.api.services.sheets.v4.model.ValueRange; import com.google.auth.http.HttpCredentialsAdapter; import com.google.auth.oauth2.GoogleCredentials; import java.io.IOException; import java.util.Collections; /* Class to demonstrate the use of Spreadsheet Get Values API */ public class GetValues { /** * Returns a range of values from a spreadsheet. * * @param spreadsheetId - Id of the spreadsheet. * @param range - Range of cells of the spreadsheet. * @return Values in the range * @throws IOException - if credentials file not found. */ public static ValueRange getValues[String spreadsheetId, String range] throws IOException { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ GoogleCredentials credentials = GoogleCredentials.getApplicationDefault[] .createScoped[Collections.singleton[SheetsScopes.SPREADSHEETS]]; HttpRequestInitializer requestInitializer = new HttpCredentialsAdapter[ credentials]; // Create the sheets API client Sheets service = new Sheets.Builder[new NetHttpTransport[], GsonFactory.getDefaultInstance[], requestInitializer] .setApplicationName["Sheets samples"] .build[]; ValueRange result = null; try { // Gets the values of the cells in the specified range. result = service.spreadsheets[].values[].get[spreadsheetId, range].execute[]; int numRows = result.getValues[] != null ? result.getValues[].size[] : 0; System.out.printf["%d rows retrieved.", numRows]; } catch [GoogleJsonResponseException e] { // TODO[developer] - handle error appropriately GoogleJsonError error = e.getDetails[]; if [error.getCode[] == 404] { System.out.printf["Spreadsheet not found with id '%s'.\n", spreadsheetId]; } else { throw e; } } return result; } }9
hồng ngọc
trang tính/đoạn trích/thư viện/đoạn trích bảng tính. rb
Xem trên GitHub
function getValues[spreadsheetId, range, callback] { try { gapi.client.sheets.spreadsheets.values.get[{ spreadsheetId: spreadsheetId, range: range, }].then[[response] => { const result = response.result; const numRows = result.values ? result.values.length : 0; console.log[`${numRows} rows retrieved.`]; if [callback] callback[response]; }]; } catch [err] { document.getElementById['content'].innerText = err.message; return; } }0
Nội dung của yêu cầu cập nhật phải là một đối tượng ValueRange, mặc dù trường bắt buộc duy nhất là
use Google\Client; use Google\Service\Drive; use Google\Service\Sheets\BatchUpdateSpreadsheetRequest; /** * get values of a particular spreadsheet[by Id and range]. */ function getValues[$spreadsheetId, $range] { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ $client = new Google\Client[]; $client->useApplicationDefaultCredentials[]; $client->addScope[Google\Service\Drive::DRIVE]; $service = new Google_Service_Sheets[$client]; $result = $service->spreadsheets_values->get[$spreadsheetId, $range]; try{ $numRows = $result->getValues[] != null ? count[$result->getValues[]] : 0; printf["%d rows retrieved.", $numRows]; return $result; } catch[Exception $e] { // TODO[developer] - handle error appropriately echo 'Message: ' .$e->getMessage[]; } }1. Nếu
use Google\Client; use Google\Service\Drive; use Google\Service\Sheets\BatchUpdateSpreadsheetRequest; /** * get values of a particular spreadsheet[by Id and range]. */ function getValues[$spreadsheetId, $range] { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ $client = new Google\Client[]; $client->useApplicationDefaultCredentials[]; $client->addScope[Google\Service\Drive::DRIVE]; $service = new Google_Service_Sheets[$client]; $result = $service->spreadsheets_values->get[$spreadsheetId, $range]; try{ $numRows = $result->getValues[] != null ? count[$result->getValues[]] : 0; printf["%d rows retrieved.", $numRows]; return $result; } catch[Exception $e] { // TODO[developer] - handle error appropriately echo 'Message: ' .$e->getMessage[]; } }2 được chỉ định, thì nó phải khớp với phạm vi trong URL. Trong ValueRange, bạn có thể tùy chọn chỉ định majorDimension của nó. Theo mặc định, ROWS được sử dụng. Nếu COLUMNS được chỉ định, mỗi mảng bên trong được ghi vào một cột thay vì một hàng
Khi cập nhật, các giá trị không có dữ liệu sẽ bị bỏ qua. Để xóa dữ liệu, hãy sử dụng một chuỗi rỗng [""]
Một tham số phạm vi có thể chỉ định nhiều ô [ví dụ: A1. D5] hoặc một ô [ví dụ: A1]. Nếu nó chỉ định nhiều ô, dữ liệu đầu vào phải nằm trong phạm vi đó. Nếu nó chỉ định một ô, dữ liệu đầu vào bắt đầu tại tọa độ đó có thể mở rộng bất kỳ số lượng hàng hoặc cột nàoViết nhiều phạm vi
Nếu bạn muốn viết nhiều dãy không liên tục, bạn có thể sử dụng bảng tính. giá trị. yêu cầu cập nhật hàng loạt
trang tính/api/bảng tính_snippets. gs Xem trên GitHubtập lệnh ứng dụng
function getValues[spreadsheetId, range, callback] {
try {
gapi.client.sheets.spreadsheets.values.get[{
spreadsheetId: spreadsheetId,
range: range,
}].then[[response] => {
const result = response.result;
const numRows = result.values ? result.values.length : 0;
console.log[`${numRows} rows retrieved.`];
if [callback] callback[response];
}];
} catch [err] {
document.getElementById['content'].innerText = err.message;
return;
}
}
1
Java
trang tính/đoạn mã/src/chính/java/BatchUpdateValues. java
Xem trên GitHub
function getValues[spreadsheetId, range, callback] { try { gapi.client.sheets.spreadsheets.values.get[{ spreadsheetId: spreadsheetId, range: range, }].then[[response] => { const result = response.result; const numRows = result.values ? result.values.length : 0; console.log[`${numRows} rows retrieved.`]; if [callback] callback[response]; }]; } catch [err] { document.getElementById['content'].innerText = err.message; return; } }2
JavaScript
trang tính/đoạn mã/sheets_batch_update_values. js
Xem trên GitHub
function getValues[spreadsheetId, range, callback] { try { gapi.client.sheets.spreadsheets.values.get[{ spreadsheetId: spreadsheetId, range: range, }].then[[response] => { const result = response.result; const numRows = result.values ? result.values.length : 0; console.log[`${numRows} rows retrieved.`]; if [callback] callback[response]; }]; } catch [err] { document.getElementById['content'].innerText = err.message; return; } }3
Nút. js
trang tính/đoạn mã/sheets_batch_update_values. js
Xem trên GitHub
function getValues[spreadsheetId, range, callback] { try { gapi.client.sheets.spreadsheets.values.get[{ spreadsheetId: spreadsheetId, range: range, }].then[[response] => { const result = response.result; const numRows = result.values ? result.values.length : 0; console.log[`${numRows} rows retrieved.`]; if [callback] callback[response]; }]; } catch [err] { document.getElementById['content'].innerText = err.message; return; } }4
PHP
trang tính/đoạn trích/src/Bảng tínhBatchUpdateValues. php
Xem trên GitHub
function getValues[spreadsheetId, range, callback] { try { gapi.client.sheets.spreadsheets.values.get[{ spreadsheetId: spreadsheetId, range: range, }].then[[response] => { const result = response.result; const numRows = result.values ? result.values.length : 0; console.log[`${numRows} rows retrieved.`]; if [callback] callback[response]; }]; } catch [err] { document.getElementById['content'].innerText = err.message; return; } }5
con trăn
trang tính/đoạn trích/sheet_batch_update_values. py
Xem trên GitHub
function getValues[spreadsheetId, range, callback] { try { gapi.client.sheets.spreadsheets.values.get[{ spreadsheetId: spreadsheetId, range: range, }].then[[response] => { const result = response.result; const numRows = result.values ? result.values.length : 0; console.log[`${numRows} rows retrieved.`]; if [callback] callback[response]; }]; } catch [err] { document.getElementById['content'].innerText = err.message; return; } }6
hồng ngọc
trang tính/đoạn trích/thư viện/đoạn trích bảng tính. rb
Xem trên GitHub
function getValues[spreadsheetId, range, callback] { try { gapi.client.sheets.spreadsheets.values.get[{ spreadsheetId: spreadsheetId, range: range, }].then[[response] => { const result = response.result; const numRows = result.values ? result.values.length : 0; console.log[`${numRows} rows retrieved.`]; if [callback] callback[response]; }]; } catch [err] { document.getElementById['content'].innerText = err.message; return; } }7
Nội dung của yêu cầu batchUpdate phải là một đối tượng BatchUpdateValuesRequest, chứa một ValueInputOption và một danh sách các đối tượng ValueRange [một đối tượng cho mỗi phạm vi bằng văn bản]. Mỗi đối tượng ValueRange chỉ định
use Google\Client; use Google\Service\Drive; use Google\Service\Sheets\BatchUpdateSpreadsheetRequest; /** * get values of a particular spreadsheet[by Id and range]. */ function getValues[$spreadsheetId, $range] { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ $client = new Google\Client[]; $client->useApplicationDefaultCredentials[]; $client->addScope[Google\Service\Drive::DRIVE]; $service = new Google_Service_Sheets[$client]; $result = $service->spreadsheets_values->get[$spreadsheetId, $range]; try{ $numRows = $result->getValues[] != null ? count[$result->getValues[]] : 0; printf["%d rows retrieved.", $numRows]; return $result; } catch[Exception $e] { // TODO[developer] - handle error appropriately echo 'Message: ' .$e->getMessage[]; } }2,
use Google\Client; use Google\Service\Drive; use Google\Service\Sheets\BatchUpdateSpreadsheetRequest; /** * get values of a particular spreadsheet[by Id and range]. */ function getValues[$spreadsheetId, $range] { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ $client = new Google\Client[]; $client->useApplicationDefaultCredentials[]; $client->addScope[Google\Service\Drive::DRIVE]; $service = new Google_Service_Sheets[$client]; $result = $service->spreadsheets_values->get[$spreadsheetId, $range]; try{ $numRows = $result->getValues[] != null ? count[$result->getValues[]] : 0; printf["%d rows retrieved.", $numRows]; return $result; } catch[Exception $e] { // TODO[developer] - handle error appropriately echo 'Message: ' .$e->getMessage[]; } }4 của chính nó và dữ liệu cần nhập
Nối các giá trị
Để nối thêm dữ liệu sau một bảng dữ liệu trong trang tính, hãy sử dụng bảng tính. giá trị. nối thêm yêu cầu
trang tính/api/bảng tính_snippets. gs Xem trên GitHubtập lệnh ứng dụng
function getValues[spreadsheetId, range, callback] {
try {
gapi.client.sheets.spreadsheets.values.get[{
spreadsheetId: spreadsheetId,
range: range,
}].then[[response] => {
const result = response.result;
const numRows = result.values ? result.values.length : 0;
console.log[`${numRows} rows retrieved.`];
if [callback] callback[response];
}];
} catch [err] {
document.getElementById['content'].innerText = err.message;
return;
}
}
8
Java
trang tính/đoạn mã/src/chính/java/AppendValues. java
Xem trên GitHub
function getValues[spreadsheetId, range, callback] { try { gapi.client.sheets.spreadsheets.values.get[{ spreadsheetId: spreadsheetId, range: range, }].then[[response] => { const result = response.result; const numRows = result.values ? result.values.length : 0; console.log[`${numRows} rows retrieved.`]; if [callback] callback[response]; }]; } catch [err] { document.getElementById['content'].innerText = err.message; return; } }9
JavaScript
trang tính/đoạn trích/sheets_append_values. js
Xem trên GitHub
/** * Gets cell values from a Spreadsheet. * @param {string} spreadsheetId The spreadsheet ID. * @param {string} range The sheet range. * @return {obj} spreadsheet information */ async function getValues[spreadsheetId, range] { const {GoogleAuth} = require['google-auth-library']; const {google} = require['googleapis']; const auth = new GoogleAuth[{ scopes: '//www.googleapis.com/auth/spreadsheets', }]; const service = google.sheets[{version: 'v4', auth}]; try { const result = await service.spreadsheets.values.get[{ spreadsheetId, range, }]; const numRows = result.data.values ? result.data.values.length : 0; console.log[`${numRows} rows retrieved.`]; return result; } catch [err] { // TODO [developer] - Handle exception throw err; } }0
Nút. js
trang tính/đoạn trích/sheets_append_values. js
Xem trên GitHub
/** * Gets cell values from a Spreadsheet. * @param {string} spreadsheetId The spreadsheet ID. * @param {string} range The sheet range. * @return {obj} spreadsheet information */ async function getValues[spreadsheetId, range] { const {GoogleAuth} = require['google-auth-library']; const {google} = require['googleapis']; const auth = new GoogleAuth[{ scopes: '//www.googleapis.com/auth/spreadsheets', }]; const service = google.sheets[{version: 'v4', auth}]; try { const result = await service.spreadsheets.values.get[{ spreadsheetId, range, }]; const numRows = result.data.values ? result.data.values.length : 0; console.log[`${numRows} rows retrieved.`]; return result; } catch [err] { // TODO [developer] - Handle exception throw err; } }1
PHP
trang tính/đoạn trích/src/Bảng tínhAppendValues. php
Xem trên GitHub
/** * Gets cell values from a Spreadsheet. * @param {string} spreadsheetId The spreadsheet ID. * @param {string} range The sheet range. * @return {obj} spreadsheet information */ async function getValues[spreadsheetId, range] { const {GoogleAuth} = require['google-auth-library']; const {google} = require['googleapis']; const auth = new GoogleAuth[{ scopes: '//www.googleapis.com/auth/spreadsheets', }]; const service = google.sheets[{version: 'v4', auth}]; try { const result = await service.spreadsheets.values.get[{ spreadsheetId, range, }]; const numRows = result.data.values ? result.data.values.length : 0; console.log[`${numRows} rows retrieved.`]; return result; } catch [err] { // TODO [developer] - Handle exception throw err; } }2
con trăn
trang tính/đoạn trích/sheets_append_values. py
Xem trên GitHub
/** * Gets cell values from a Spreadsheet. * @param {string} spreadsheetId The spreadsheet ID. * @param {string} range The sheet range. * @return {obj} spreadsheet information */ async function getValues[spreadsheetId, range] { const {GoogleAuth} = require['google-auth-library']; const {google} = require['googleapis']; const auth = new GoogleAuth[{ scopes: '//www.googleapis.com/auth/spreadsheets', }]; const service = google.sheets[{version: 'v4', auth}]; try { const result = await service.spreadsheets.values.get[{ spreadsheetId, range, }]; const numRows = result.data.values ? result.data.values.length : 0; console.log[`${numRows} rows retrieved.`]; return result; } catch [err] { // TODO [developer] - Handle exception throw err; } }3
hồng ngọc
trang tính/đoạn trích/thư viện/đoạn trích bảng tính. rb
Xem trên GitHub
/** * Gets cell values from a Spreadsheet. * @param {string} spreadsheetId The spreadsheet ID. * @param {string} range The sheet range. * @return {obj} spreadsheet information */ async function getValues[spreadsheetId, range] { const {GoogleAuth} = require['google-auth-library']; const {google} = require['googleapis']; const auth = new GoogleAuth[{ scopes: '//www.googleapis.com/auth/spreadsheets', }]; const service = google.sheets[{version: 'v4', auth}]; try { const result = await service.spreadsheets.values.get[{ spreadsheetId, range, }]; const numRows = result.data.values ? result.data.values.length : 0; console.log[`${numRows} rows retrieved.`]; return result; } catch [err] { // TODO [developer] - Handle exception throw err; } }4
Nội dung của yêu cầu cập nhật phải là một đối tượng ValueRange, mặc dù trường bắt buộc duy nhất là
use Google\Client; use Google\Service\Drive; use Google\Service\Sheets\BatchUpdateSpreadsheetRequest; /** * get values of a particular spreadsheet[by Id and range]. */ function getValues[$spreadsheetId, $range] { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ $client = new Google\Client[]; $client->useApplicationDefaultCredentials[]; $client->addScope[Google\Service\Drive::DRIVE]; $service = new Google_Service_Sheets[$client]; $result = $service->spreadsheets_values->get[$spreadsheetId, $range]; try{ $numRows = $result->getValues[] != null ? count[$result->getValues[]] : 0; printf["%d rows retrieved.", $numRows]; return $result; } catch[Exception $e] { // TODO[developer] - handle error appropriately echo 'Message: ' .$e->getMessage[]; } }1. Nếu
use Google\Client; use Google\Service\Drive; use Google\Service\Sheets\BatchUpdateSpreadsheetRequest; /** * get values of a particular spreadsheet[by Id and range]. */ function getValues[$spreadsheetId, $range] { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ $client = new Google\Client[]; $client->useApplicationDefaultCredentials[]; $client->addScope[Google\Service\Drive::DRIVE]; $service = new Google_Service_Sheets[$client]; $result = $service->spreadsheets_values->get[$spreadsheetId, $range]; try{ $numRows = $result->getValues[] != null ? count[$result->getValues[]] : 0; printf["%d rows retrieved.", $numRows]; return $result; } catch[Exception $e] { // TODO[developer] - handle error appropriately echo 'Message: ' .$e->getMessage[]; } }2 được chỉ định, thì nó phải khớp với phạm vi trong URL. Trong ValueRange, bạn có thể tùy chọn chỉ định majorDimension của nó. Theo mặc định, ROWS được sử dụng. Nếu COLUMNS được chỉ định, mỗi mảng bên trong được ghi vào một cột thay vì một hàngTham số majorDimension không kiểm soát nếu dữ liệu được thêm dưới dạng hàng hoặc cột vào bảng. Dữ liệu sẽ luôn được thêm vào các hàng tiếp theo. Tham số chỉ kiểm soát cách đọc dữ liệu đầu vào
Phạm vi đầu vào được sử dụng để tìm kiếm dữ liệu hiện có và tìm "bảng" trong phạm vi đó. Các giá trị được thêm vào hàng tiếp theo của bảng, bắt đầu từ cột đầu tiên của bảng. Ví dụ: hãy xem xét một trang tính
use Google\Client; use Google\Service\Drive; use Google\Service\Sheets\BatchUpdateSpreadsheetRequest; /** * get values of a particular spreadsheet[by Id and range]. */ function getValues[$spreadsheetId, $range] { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ $client = new Google\Client[]; $client->useApplicationDefaultCredentials[]; $client->addScope[Google\Service\Drive::DRIVE]; $service = new Google_Service_Sheets[$client]; $result = $service->spreadsheets_values->get[$spreadsheetId, $range]; try{ $numRows = $result->getValues[] != null ? count[$result->getValues[]] : 0; printf["%d rows retrieved.", $numRows]; return $result; } catch[Exception $e] { // TODO[developer] - handle error appropriately echo 'Message: ' .$e->getMessage[]; } }7 trông giống nhưABCDE1xyz2xyz34xy5yz6xyz7
Có hai bảng trong trang tính.
use Google\Client; use Google\Service\Drive; use Google\Service\Sheets\BatchUpdateSpreadsheetRequest; /** * get values of a particular spreadsheet[by Id and range]. */ function getValues[$spreadsheetId, $range] { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ $client = new Google\Client[]; $client->useApplicationDefaultCredentials[]; $client->addScope[Google\Service\Drive::DRIVE]; $service = new Google_Service_Sheets[$client]; $result = $service->spreadsheets_values->get[$spreadsheetId, $range]; try{ $numRows = $result->getValues[] != null ? count[$result->getValues[]] : 0; printf["%d rows retrieved.", $numRows]; return $result; } catch[Exception $e] { // TODO[developer] - handle error appropriately echo 'Message: ' .$e->getMessage[]; } }8 và
use Google\Client; use Google\Service\Drive; use Google\Service\Sheets\BatchUpdateSpreadsheetRequest; /** * get values of a particular spreadsheet[by Id and range]. */ function getValues[$spreadsheetId, $range] { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ $client = new Google\Client[]; $client->useApplicationDefaultCredentials[]; $client->addScope[Google\Service\Drive::DRIVE]; $service = new Google_Service_Sheets[$client]; $result = $service->spreadsheets_values->get[$spreadsheetId, $range]; try{ $numRows = $result->getValues[] != null ? count[$result->getValues[]] : 0; printf["%d rows retrieved.", $numRows]; return $result; } catch[Exception $e] { // TODO[developer] - handle error appropriately echo 'Message: ' .$e->getMessage[]; } }9. Các giá trị được thêm vào sẽ bắt đầu từ
from __future__ import print_function import google.auth from googleapiclient.discovery import build from googleapiclient.errors import HttpError def get_values[spreadsheet_id, range_name]: """ Creates the batch_update the user has access to. Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for the application. """ creds, _ = google.auth.default[] # pylint: disable=maybe-no-member try: service = build['sheets', 'v4', credentials=creds] result = service.spreadsheets[].values[].get[ spreadsheetId=spreadsheet_id, range=range_name].execute[] rows = result.get['values', []] print[f"{len[rows]} rows retrieved"] return result except HttpError as error: print[f"An error occurred: {error}"] return error if __name__ == '__main__': # Pass: spreadsheet_id, and range_name get_values["1CM29gwKIzeXsAppeNwrc8lbYaVMmUclprLuLYuHog4k", "A1:C2"]0 cho tất cả các đầu vào
use Google\Client; use Google\Service\Drive; use Google\Service\Sheets\BatchUpdateSpreadsheetRequest; /** * get values of a particular spreadsheet[by Id and range]. */ function getValues[$spreadsheetId, $range] { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ $client = new Google\Client[]; $client->useApplicationDefaultCredentials[]; $client->addScope[Google\Service\Drive::DRIVE]; $service = new Google_Service_Sheets[$client]; $result = $service->spreadsheets_values->get[$spreadsheetId, $range]; try{ $numRows = $result->getValues[] != null ? count[$result->getValues[]] : 0; printf["%d rows retrieved.", $numRows]; return $result; } catch[Exception $e] { // TODO[developer] - handle error appropriately echo 'Message: ' .$e->getMessage[]; } }2 sau đây
use Google\Client; use Google\Service\Drive; use Google\Service\Sheets\BatchUpdateSpreadsheetRequest; /** * get values of a particular spreadsheet[by Id and range]. */ function getValues[$spreadsheetId, $range] { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ $client = new Google\Client[]; $client->useApplicationDefaultCredentials[]; $client->addScope[Google\Service\Drive::DRIVE]; $service = new Google_Service_Sheets[$client]; $result = $service->spreadsheets_values->get[$spreadsheetId, $range]; try{ $numRows = $result->getValues[] != null ? count[$result->getValues[]] : 0; printf["%d rows retrieved.", $numRows]; return $result; } catch[Exception $e] { // TODO[developer] - handle error appropriately echo 'Message: ' .$e->getMessage[]; } }
7, vì nó sẽ kiểm tra tất cả dữ liệu trong trang tính, xác định rằng bảng ởuse Google\Client; use Google\Service\Drive; use Google\Service\Sheets\BatchUpdateSpreadsheetRequest; /** * get values of a particular spreadsheet[by Id and range]. */ function getValues[$spreadsheetId, $range] { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ $client = new Google\Client[]; $client->useApplicationDefaultCredentials[]; $client->addScope[Google\Service\Drive::DRIVE]; $service = new Google_Service_Sheets[$client]; $result = $service->spreadsheets_values->get[$spreadsheetId, $range]; try{ $numRows = $result->getValues[] != null ? count[$result->getValues[]] : 0; printf["%d rows retrieved.", $numRows]; return $result; } catch[Exception $e] { // TODO[developer] - handle error appropriately echo 'Message: ' .$e->getMessage[]; } }
9 là bảng cuối cùngfrom __future__ import print_function import google.auth from googleapiclient.discovery import build from googleapiclient.errors import HttpError def get_values[spreadsheet_id, range_name]: """ Creates the batch_update the user has access to. Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for the application. """ creds, _ = google.auth.default[] # pylint: disable=maybe-no-member try: service = build['sheets', 'v4', credentials=creds] result = service.spreadsheets[].values[].get[ spreadsheetId=spreadsheet_id, range=range_name].execute[] rows = result.get['values', []] print[f"{len[rows]} rows retrieved"] return result except HttpError as error: print[f"An error occurred: {error}"] return error if __name__ == '__main__': # Pass: spreadsheet_id, and range_name get_values["1CM29gwKIzeXsAppeNwrc8lbYaVMmUclprLuLYuHog4k", "A1:C2"]
4 hoặcfrom __future__ import print_function import google.auth from googleapiclient.discovery import build from googleapiclient.errors import HttpError def get_values[spreadsheet_id, range_name]: """ Creates the batch_update the user has access to. Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for the application. """ creds, _ = google.auth.default[] # pylint: disable=maybe-no-member try: service = build['sheets', 'v4', credentials=creds] result = service.spreadsheets[].values[].get[ spreadsheetId=spreadsheet_id, range=range_name].execute[] rows = result.get['values', []] print[f"{len[rows]} rows retrieved"] return result except HttpError as error: print[f"An error occurred: {error}"] return error if __name__ == '__main__': # Pass: spreadsheet_id, and range_name get_values["1CM29gwKIzeXsAppeNwrc8lbYaVMmUclprLuLYuHog4k", "A1:C2"]
5, vì cả hai đều nằm trong bảnguse Google\Client; use Google\Service\Drive; use Google\Service\Sheets\BatchUpdateSpreadsheetRequest; /** * get values of a particular spreadsheet[by Id and range]. */ function getValues[$spreadsheetId, $range] { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ $client = new Google\Client[]; $client->useApplicationDefaultCredentials[]; $client->addScope[Google\Service\Drive::DRIVE]; $service = new Google_Service_Sheets[$client]; $result = $service->spreadsheets_values->get[$spreadsheetId, $range]; try{ $numRows = $result->getValues[] != null ? count[$result->getValues[]] : 0; printf["%d rows retrieved.", $numRows]; return $result; } catch[Exception $e] { // TODO[developer] - handle error appropriately echo 'Message: ' .$e->getMessage[]; } }
9from __future__ import print_function import google.auth from googleapiclient.discovery import build from googleapiclient.errors import HttpError def get_values[spreadsheet_id, range_name]: """ Creates the batch_update the user has access to. Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for the application. """ creds, _ = google.auth.default[] # pylint: disable=maybe-no-member try: service = build['sheets', 'v4', credentials=creds] result = service.spreadsheets[].values[].get[ spreadsheetId=spreadsheet_id, range=range_name].execute[] rows = result.get['values', []] print[f"{len[rows]} rows retrieved"] return result except HttpError as error: print[f"An error occurred: {error}"] return error if __name__ == '__main__': # Pass: spreadsheet_id, and range_name get_values["1CM29gwKIzeXsAppeNwrc8lbYaVMmUclprLuLYuHog4k", "A1:C2"]
7, bởi vì bảng cuối cùng trong phạm vi là bảnguse Google\Client; use Google\Service\Drive; use Google\Service\Sheets\BatchUpdateSpreadsheetRequest; /** * get values of a particular spreadsheet[by Id and range]. */ function getValues[$spreadsheetId, $range] { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ $client = new Google\Client[]; $client->useApplicationDefaultCredentials[]; $client->addScope[Google\Service\Drive::DRIVE]; $service = new Google_Service_Sheets[$client]; $result = $service->spreadsheets_values->get[$spreadsheetId, $range]; try{ $numRows = $result->getValues[] != null ? count[$result->getValues[]] : 0; printf["%d rows retrieved.", $numRows]; return $result; } catch[Exception $e] { // TODO[developer] - handle error appropriately echo 'Message: ' .$e->getMessage[]; } }
9 [mặc dù nó cũng chứa bảnguse Google\Client; use Google\Service\Drive; use Google\Service\Sheets\BatchUpdateSpreadsheetRequest; /** * get values of a particular spreadsheet[by Id and range]. */ function getValues[$spreadsheetId, $range] { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ $client = new Google\Client[]; $client->useApplicationDefaultCredentials[]; $client->addScope[Google\Service\Drive::DRIVE]; $service = new Google_Service_Sheets[$client]; $result = $service->spreadsheets_values->get[$spreadsheetId, $range]; try{ $numRows = $result->getValues[] != null ? count[$result->getValues[]] : 0; printf["%d rows retrieved.", $numRows]; return $result; } catch[Exception $e] { // TODO[developer] - handle error appropriately echo 'Message: ' .$e->getMessage[]; } }
8]result = service.get_spreadsheet_values[spreadsheet_id, range_name] num_rows = result.values ? result.values.length : 0 puts "#{num_rows} rows received."
0, vì bảng cuối cùng trong phạm vi là bảnguse Google\Client; use Google\Service\Drive; use Google\Service\Sheets\BatchUpdateSpreadsheetRequest; /** * get values of a particular spreadsheet[by Id and range]. */ function getValues[$spreadsheetId, $range] { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ $client = new Google\Client[]; $client->useApplicationDefaultCredentials[]; $client->addScope[Google\Service\Drive::DRIVE]; $service = new Google_Service_Sheets[$client]; $result = $service->spreadsheets_values->get[$spreadsheetId, $range]; try{ $numRows = $result->getValues[] != null ? count[$result->getValues[]] : 0; printf["%d rows retrieved.", $numRows]; return $result; } catch[Exception $e] { // TODO[developer] - handle error appropriately echo 'Message: ' .$e->getMessage[]; } }
9 [mặc dù bắt đầu trước và kết thúc sau nó]
Các đầu vào
use Google\Client; use Google\Service\Drive; use Google\Service\Sheets\BatchUpdateSpreadsheetRequest; /** * get values of a particular spreadsheet[by Id and range]. */ function getValues[$spreadsheetId, $range] { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ $client = new Google\Client[]; $client->useApplicationDefaultCredentials[]; $client->addScope[Google\Service\Drive::DRIVE]; $service = new Google_Service_Sheets[$client]; $result = $service->spreadsheets_values->get[$spreadsheetId, $range]; try{ $numRows = $result->getValues[] != null ? count[$result->getValues[]] : 0; printf["%d rows retrieved.", $numRows]; return $result; } catch[Exception $e] { // TODO[developer] - handle error appropriately echo 'Message: ' .$e->getMessage[]; } }2 sau đây sẽ không bắt đầu ghi tại
from __future__ import print_function import google.auth from googleapiclient.discovery import build from googleapiclient.errors import HttpError def get_values[spreadsheet_id, range_name]: """ Creates the batch_update the user has access to. Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for the application. """ creds, _ = google.auth.default[] # pylint: disable=maybe-no-member try: service = build['sheets', 'v4', credentials=creds] result = service.spreadsheets[].values[].get[ spreadsheetId=spreadsheet_id, range=range_name].execute[] rows = result.get['values', []] print[f"{len[rows]} rows retrieved"] return result except HttpError as error: print[f"An error occurred: {error}"] return error if __name__ == '__main__': # Pass: spreadsheet_id, and range_name get_values["1CM29gwKIzeXsAppeNwrc8lbYaVMmUclprLuLYuHog4k", "A1:C2"]0
result = service.get_spreadsheet_values[spreadsheet_id, range_name] num_rows = result.values ? result.values.length : 0 puts "#{num_rows} rows received."
4 sẽ bắt đầu viết từresult = service.get_spreadsheet_values[spreadsheet_id, range_name] num_rows = result.values ? result.values.length : 0 puts "#{num_rows} rows received."
5, vì nó nằm trong bảnguse Google\Client; use Google\Service\Drive; use Google\Service\Sheets\BatchUpdateSpreadsheetRequest; /** * get values of a particular spreadsheet[by Id and range]. */ function getValues[$spreadsheetId, $range] { /* Load pre-authorized user credentials from the environment. TODO[developer] - See //developers.google.com/identity for guides on implementing OAuth2 for your application. */ $client = new Google\Client[]; $client->useApplicationDefaultCredentials[]; $client->addScope[Google\Service\Drive::DRIVE]; $service = new Google_Service_Sheets[$client]; $result = $service->spreadsheets_values->get[$spreadsheetId, $range]; try{ $numRows = $result->getValues[] != null ? count[$result->getValues[]] : 0; printf["%d rows retrieved.", $numRows]; return $result; } catch[Exception $e] { // TODO[developer] - handle error appropriately echo 'Message: ' .$e->getMessage[]; } }
8result = service.get_spreadsheet_values[spreadsheet_id, range_name] num_rows = result.values ? result.values.length : 0 puts "#{num_rows} rows received."
7 sẽ bắt đầu viết từresult = service.get_spreadsheet_values[spreadsheet_id, range_name] num_rows = result.values ? result.values.length : 0 puts "#{num_rows} rows received."
7, bởi vì nó không có trong bất kỳ bảng nào. [result = service.get_spreadsheet_values[spreadsheet_id, range_name] num_rows = result.values ? result.values.length : 0 puts "#{num_rows} rows received."
9 cũng sẽ bắt đầu viết tạiresult = service.get_spreadsheet_values[spreadsheet_id, range_name] num_rows = result.values ? result.values.length : 0 puts "#{num_rows} rows received."
9 vì những lý do tương tự. ]
Ngoài ra, bạn có thể chọn nếu bạn muốn ghi đè lên dữ liệu hiện có sau bảng hoặc chèn hàng mới cho dữ liệu mới. Theo mặc định, đầu vào sẽ ghi đè dữ liệu sau bảng. Để ghi dữ liệu mới vào các hàng mới, hãy chỉ định
/** * Gets cell values from a Spreadsheet. * @param {string} spreadsheetId The spreadsheet ID. * @param {string} range The sheet range. * @return {obj} spreadsheet information */ async function getValues[spreadsheetId, range] { const {GoogleAuth} = require['google-auth-library']; const {google} = require['googleapis']; const auth = new GoogleAuth[{ scopes: '//www.googleapis.com/auth/spreadsheets', }]; const service = google.sheets[{version: 'v4', auth}]; try { const result = await service.spreadsheets.values.get[{ spreadsheetId, range, }]; const numRows = result.data.values ? result.data.values.length : 0; console.log[`${numRows} rows retrieved.`]; return result; } catch [err] { // TODO [developer] - Handle exception throw err; } }01