Chilkat • HOME • Android™ • AutoIt • C • C# • C++ • Chilkat2-Python • CkPython • Classic ASP • DataFlex • Delphi DLL • Go • Java • Node.js • Objective-C • PHP Extension • Perl • PowerBuilder • PowerShell • PureBasic • Ruby • SQL Server • Swift • Tcl • Unicode C • Unicode C++ • VB.NET • VBScript • Visual Basic 6.0 • Visual FoxPro • Xojo Plugin
(Lianja) Google Sheets - Append Values to an Existing SpreadsheetAppends values to an existing Google spreadsheet.
// This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. // This example uses a previously obtained access token having permission for the // Google Sheets scope. // In this example, Get Google Sheets OAuth2 Access Token, the access // token was saved to a JSON file. This example fetches the access token from the file.. loJsonToken = createobject("CkJsonObject") llSuccess = loJsonToken.LoadFile("qa_data/tokens/googleSheets.json") if (loJsonToken.HasMember("access_token") = .F.) then ? "No access token found." release loJsonToken return endif loHttp = createobject("CkHttp") loHttp.AuthToken = loJsonToken.StringOf("access_token") // To append values to an existing spreadsheet, our HTTP request body will // contain JSON in the format of a "ValueRange". For example, the spreadsheet we'll be // adding to in this example looks like this: // // The JSON ValueRange for the cells in the above spreadsheet is: // { // "range": "Sheet1!A1:B5", // "majorDimension": "ROWS", // "values": [ // [ // "Item", // "Cost" // ], // [ // "Wheel", // "$20.50" // ], // [ // "Door", // "$15" // ], // [ // "Engine", // "$100" // ], // [ // "Totals", // "$135.50" // ] // ] // } // This example will append 6 cells (3 rows / 2 columns). // We'll be appending the following: // // "Paint", "$100" // "Brakes", "$100" // "New Total", "$335.50" // // The range of cells we'll be appending is A1:B5 // Therefore, the ValueRange JSON we'll be sending in our POST body is: // { // "range": "Sheet1!A1:B5", // "majorDimension": "ROWS", // "values": [ // [ // "Paint", // "$100" // ], // [ // "Brakes", // "$100" // ], // [ // "New Total", // "$335.50" // ] // ] // } loJson = createobject("CkJsonObject") loJson.UpdateString("range","Sheet1!A1:B5") loJson.UpdateString("majorDimension","ROWS") loJson.I = 0 loJson.J = 1 loJson.UpdateString("values[i][j]","Paint") loJson.J = 1 loJson.UpdateString("values[i][j]","$100") loJson.I = 1 loJson.J = 0 loJson.UpdateString("values[i][j]","Brakes") loJson.J = 1 loJson.UpdateString("values[i][j]","$100") loJson.I = 2 loJson.J = 0 loJson.UpdateString("values[i][j]","Totals") loJson.J = 1 loJson.UpdateString("values[i][j]","$335.50") loJson.EmitCompact = .F. ? loJson.Emit() // Send the POST to: // https://sheets.googleapis.com/v4/spreadsheets/{spreadsheetId}/values/{range}:append?valueInputOption=USER_ENTERED loHttp.SetUrlVar("spreadsheetId","1_SO2L-Y6nCayNpNppJLF0r9yHB2UnaCleGCKeE4O0SA") loHttp.SetUrlVar("range","Sheet1!A1:B5") loResp = loHttp.PostJson("https://sheets.googleapis.com/v4/spreadsheets/{$spreadsheetId}/values/{$range}:append?valueInputOption=USER_ENTERED",loJson.Emit()) if (loHttp.LastMethodSuccess <> .T.) then ? loHttp.LastErrorText release loJsonToken release loHttp release loJson return endif ? "response status code = " + str(loResp.StatusCode) ? "response JSON = " + loResp.BodyStr release loResp // Sample output: // // response status code = 200 // response JSON = { // "spreadsheetId": "1_SO2L-Y6nCayNpNppJLF0r9yHB2UnaCleGCKeE4O0SA", // "tableRange": "Sheet1!A1:B5", // "updates": { // "spreadsheetId": "1_SO2L-Y6nCayNpNppJLF0r9yHB2UnaCleGCKeE4O0SA", // "updatedRange": "Sheet1!A6:B8", // "updatedRows": 3, // "updatedColumns": 2, // "updatedCells": 6 // } // } // // Our Google Spreadsheet now looks like this: // release loJsonToken release loHttp release loJson |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.