标签: google-sheets-api

谷歌电子表格/脚本将多个私人谷歌电子表格的共享权限设置为多人

我必须与 50 个不同的人共享 50 个私人 Google 电子表格。我已经在其他电子表格中列出了这些电子表格的 URL 和这些人的电子邮件,假设在 A 列(URL 列表)和 B 列(电子邮件列表)中。

我尝试使用脚本将这些 URL 发送到列出的电子邮件,但它不起作用,因为存在共享权限的障碍。

所以,我想知道是否有任何脚本可以自动设置这些电子邮件的“可以编辑”共享权限?

非常感谢。

google-sheets google-apps-script google-sheets-api

1
推荐指数
1
解决办法
9657
查看次数

如何从谷歌电子表格中获取带有键->值的json?

现在我正在使用它从工作表中获取数据。

fetch('https://sheets.googleapis.com/v4/spreadsheets/DOC_ID/values/!A2:Z999?key=API_KEY')
        .then(function(response) {
            return response.json();
        }).then(function(json) {
            console.log(json)
        });
Run Code Online (Sandbox Code Playgroud)

结果我得到了一个值数组 - 行。

[Row Name1,Row Name2,Row Name3,],
[val11, val12, val13],
[val21, val22, val23],
[val31, val32, val33]
Run Code Online (Sandbox Code Playgroud)

有没有办法将其作为 key->value json 获取?像这个:

{
"Row Name1":"val11",
"Row Name2":"val12",
...
},
{
"Row Name1":"val21",
"Row Name2":"val22",
...
},
Run Code Online (Sandbox Code Playgroud)

谢谢

json google-sheets google-sheets-api

1
推荐指数
1
解决办法
2538
查看次数

公式值的 Google 脚本返回 #N/A

当我在脚本中读取时,F 列有一个公式值,显示 #N/A。

下面是一个非常简单的脚本代码,但我无法理解为什么它显示#N/A,我没有实现任何触发器。

var spreadsheet = 
         SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Sheet1');
         var values = spreadsheet.getDataRange().getValues();
         Logger.log(values[1][0]);
         Logger.log(values[1][5]);
Run Code Online (Sandbox Code Playgroud)

https://docs.google.com/spreadsheets/d/18EsMMrC1IbzkZaIb5aIx3OfwvN1VzdmHm5B-YVuCMs4/edit?usp=sharing

formula google-sheets google-apps-script google-sheets-api

1
推荐指数
1
解决办法
1970
查看次数

在 Google 开发者控制台中向服务帐户授予驱动器权限

我正在尝试创建一个可以访问云端硬盘文件夹的 Google 服务帐户,以便我可以使用google-spreadsheets读取和写入该文件夹中的文件。在开发过程中,我在我的非托管 Google 帐户下创建了一个服务帐户。用户帐户具有所有者访问权限。为了获得访问权限,我需要将文档共享设置更改为公开(具有链接访问权限)。对于开发来说这不是问题,但当然在生产中我不希望我的数据被公开访问。

如何确保服务帐户可以访问未公开共享的文档(首选在组织内共享)?将其设置为仅组织访问权限时,API 会向我提供 403(禁止)代码。

google-api node.js google-sheets-api

1
推荐指数
1
解决办法
1343
查看次数

绑定到 Google 电子表格的 Google 脚本(.gs 文件)的下载/备份

我有谷歌电子表格,其中绑定了谷歌脚本(.gs 文件)。当我从 Google 云端硬盘下载它们时,仅下载 csv 或 xlsx。不会下载关联的脚本文件(.gs 文件)。不过,可以从 Google Drive 下载独立脚本。如何备份绑定到 Google 电子表格的 Google 脚本(.gs 文件)?如何下载它们?

google-sheets google-apps-script google-sheets-api

1
推荐指数
1
解决办法
1519
查看次数

如何导入GA电商购物行为分析数据?

我想使用 Google Analytics API 在 Google Sheets 中创建报告 - 更准确地说,是导入电子商务购物行为分析中的数据。

具体来说,以下数据似乎无法作为指标/维度:

- 不添加购物车 - 添加到购物车的会话 - 放弃购物车 - 结帐的会话 - 放弃结帐

我还注意到,“添加到购物车的产品”和“添加到购物车的数量”(以指标为单位)不会将数据呈现为唯一的 - 即会话中唯一的“添加到购物车”,而是给定维度的“添加到购物车”总数。

简而言之,我如何通过 Google Analytics API/Google Sheets 中的报告访问 GA 中电子商务购物行为数据中提供的信息。

google-analytics google-sheets-api

1
推荐指数
1
解决办法
1050
查看次数

添加新工作表

我尝试添加一张新表,但我不明白该怎么做。请帮帮我...

谢谢。

Google 表格示例代码 https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets/batchUpdate

AddSheetRequest https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets/request#AddSheetRequest

package main

// BEFORE RUNNING:
// ---------------
// 1. If not already done, enable the Google Sheets API
//    and check the quota for your project at
//    https://console.developers.google.com/apis/api/sheets
// 2. Install and update the Go dependencies by running `go get -u` in the
//    project directory.

import (
        "errors"
        "fmt"
        "log"
        "net/http"

        "golang.org/x/net/context"
        "google.golang.org/api/sheets/v4"
)

func main() {
        ctx := context.Background()

        c, err := getClient(ctx)
        if err != nil {
                log.Fatal(err)
        } …
Run Code Online (Sandbox Code Playgroud)

go google-sheets-api

1
推荐指数
1
解决办法
728
查看次数

返回网格限制错误的 Google 电子表格 API

我正在尝试使用 Ruby API 更新 Google Sheet(这只是 SheetsV4 API 的包装器)

我遇到以下错误

Google::Apis::ClientError: badRequest: Range ('MySheet'!AA1) 超出网格限制。最大行数:1000,最大列数:26

在 google 论坛上找到了这个问题的参考资料,但是除了使用不同的方法写入电子表格之外,似乎没有解决该问题的方法。

问题是,我需要复制现有的电子表格模板,并在各种工作表中输入我的原始数据。到目前为止,我一直在使用此代码(serviceRuby SheetsV4 API 的客户端在哪里)

def write_table(values, sheet: 'Sheet1', column: 1, row: 1, range: nil, value_input_option: 'RAW')
  google_range = begin
    if range
      "#{sheet}!#{range}"
    elsif column && row
      "#{sheet}!#{integer_to_A1_notation(column)}#{row}"
    end
  end
  value_range_object = ::Google::Apis::SheetsV4::ValueRange.new(
    range: google_range, values: values
  )
  service.update_spreadsheet_value(spreadsheet_id,
    google_range,
    value_range_object,
    value_input_option: value_input_option
  )
end
Run Code Online (Sandbox Code Playgroud)

到目前为止,它运行得很好,但是在向我的提取物中添加了更多数据之后,我浏览了第 26 列(AA向前的列),现在出现错误。

是否有一些选项可以传递给update_spreadsheet_value我们可以提高这个限制?

否则,使用 append 写入电子表格的另一种方法是什么?

编辑 - 对我的场景的清晰描述 …

ruby google-sheets-api

1
推荐指数
1
解决办法
3376
查看次数

如何通过gspread清除谷歌表中的范围

嗨,我想使用 gspread 清除谷歌表中的 A3:J10000 范围。

做这样的循环需要太多时间:

for cell in range_to_clear:
cell.value=''
sh.worksheet('WorksheetX').update_cells(range_to_clear,value_input_option='USER_ENTERED')
Run Code Online (Sandbox Code Playgroud)

我找到了 values_clear() 方法,但无法使其工作:

range_2_delete = sh.worksheet("WorksheetX").range("A3:J10000")
sh.values_clear(range_2_delete)
Run Code Online (Sandbox Code Playgroud)

上面的代码给出了这个错误:AttributeError: 'list' object has no attribute 'encode'

python google-sheets gspread google-sheets-api

1
推荐指数
1
解决办法
5137
查看次数

UrlFetchApp 超时

我正在尝试使用 Google 表格下载一些报告。

所以基本上我正在使用 UrlFetchApp用来做这项工作的,它会在 1 分钟内收到响应时执行。如果响应时间超过一分钟,则请求超时且不会下载报告。

这是我发送的选项UrlFetchApp

var options = {
  "method" : "post",
  "header" : "someHeaders",
  "muteHttpExceptions" : true,
  "followRedirects" : false,
  "Content-Encoding" : "gzip",
  "payload" : "somePayload"
}
Run Code Online (Sandbox Code Playgroud)

然后一个简单的调用 .fetch()

有没有办法增加超时或任何解决方法?

google-sheets google-apps-script google-sheets-api

1
推荐指数
1
解决办法
1387
查看次数