2

我正在寻找一种方法:

a) 替换 Google 电子表格中的“文件”>“下载为... ”>“ Microsoft Excel (.xlsx) ”,这样当我点击“Microsoft Excel (.xlsx)”时,它会询问我的名称我要保存的文件(即:像典型的“另存为... ”菜单项)。

b)如果无法替换标准菜单条目,我至少想在另一个菜单中添加另一个菜单条目,其行为类似于上述。

尽管我无法编写一个让我替换现有菜单条目的脚本,但我还是设法编写了一个添加额外菜单的脚本。

是否有可能完成“a”?


现在的另一个问题是我似乎无法找到一种方法来复制“文件”>“下载为...”>“Microsoft Excel (.xlsx)”的行为。

我发现其他帖子描述了如何编写 Google 脚本以执行类似操作(例如:在Google Drive中以特定格式创建电子表格的备份,或通过GMail将其发送到特定地址)。

实际上,在阅读“我可以从谷歌应用脚​​本生成的 URL 链接下载文件”之后,我什至不确定这是否可能。

请注意,您本身无法下载,因为您无法从应用程序脚本访问 PC 的资源(例如文件系统)。该文件仍在“云”中......在这种情况下,它已从它所在的网站复制到 Google Drive。但是,如果您正在运行 Drive 应用程序,该文件现在将同步到您的 PC。

有没有办法做到这一点?


提前致谢。

4

1 回答 1

1

我从电子表格下载文件的唯一方法是编写完全独立的脚本,该脚本通过文档 ID 访问我的原始电子表格,生成一个文件并像这样下载它:

function doGet(){
    var outputDocument = DocumentApp.create('Some csv'); 
    var content = getCsv();
    var textContent = ContentService.createTextOutput(content);
    textContent.setMimeType(ContentService.MimeType.CSV);
    textContent.downloadAsFile("4NocniMaraton.csv");
    return textContent;
}

然后我必须发布应用程序并获取它的链接。该链接我放在原始电子表格的一张表中,用作数据下载链接。除此之外,我没有找到解决安全问题的方法。

于 2013-07-17T08:59:27.970 回答