我正在寻找一种方法:
a)替换“档案”> “下载为... ”> Google电子表格中的“ Microsoft Excel(.xlsx)”,当我点击“Microsoft Excel(.xlsx)”时,它会询问我要保存的文件的名称(即:像典型的“另存为... ”菜单条目一样。
b)如果无法替换标准菜单条目,我希望至少在另一个菜单中添加另一个菜单条目,其行为如上所述。
即使我无法编写允许我替换现有菜单条目的脚本,我也设法编写了一个添加额外菜单的脚本。
是否可以完成“a”?
现在的另一个问题是我似乎无法找到一种方法复制“文件”的行为> “下载为...”> “Microsoft Excel(.xlsx)”。
我找到了其他帖子,其中描述了如何编写Google脚本以执行类似的操作(例如:以特定格式在 Google云端硬盘中创建电子表格的备份,或发送它通过 GMail 到特定地址。)
实际上,在阅读“Can I download file from URL link generated by google apps script”后,我甚至不确定是否可能。
请注意,由于您无法访问自己,因此无法下载 应用程序脚本中的PC资源(例如文件系统)。该文件仍然是 在“云”中...在这种情况下,它已经从网站上复制了 已进入Google云端硬盘。但是,如果您正在运行云端硬盘应用, 该文件现在将同步到您的PC。
有没有办法做到这一点?
提前致谢。
答案 0 :(得分: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;
}
然后我必须发布应用程序并获取它的链接。我将这个链接放在原始电子表格中的一张表格中,我将其用作数据下载链接。除此之外,我没有找到解决安全问题的方法。