Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google apps script 如何设置SpreadsheetApp保存电子表格的位置?_Google Apps Script_Google Sheets - Fatal编程技术网

Google apps script 如何设置SpreadsheetApp保存电子表格的位置?

Google apps script 如何设置SpreadsheetApp保存电子表格的位置?,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我正在尝试使用谷歌应用程序脚本将电子表格保存到硬盘上的特定文件夹中。但是,我看不到允许我这样做的方法 使用: 电子表格应用程序。创建(名称) 将其直接保存到驱动器,是否有方法将其保存到文件夹中 非常感谢您的帮助 这些解决方案怎么样?你可以自由选择其中一个 SpreadsheetApp.create()无法直接在特殊文件夹中创建。它被创建到根文件夹。当您想在特殊文件夹中创建新的电子表格时,可以使用DriveApp和DriveAPI实现。示例脚本如下所示 1.使用DriveApp 使用此选项时,只能

我正在尝试使用谷歌应用程序脚本将电子表格保存到硬盘上的特定文件夹中。但是,我看不到允许我这样做的方法

使用: 电子表格应用程序。创建(名称)

将其直接保存到驱动器,是否有方法将其保存到文件夹中


非常感谢您的帮助

这些解决方案怎么样?你可以自由选择其中一个

SpreadsheetApp.create()
无法直接在特殊文件夹中创建。它被创建到根文件夹。当您想在特殊文件夹中创建新的电子表格时,可以使用DriveApp和DriveAPI实现。示例脚本如下所示

1.使用DriveApp 使用此选项时,只能通过将其复制并粘贴到脚本编辑器来使用

var fileId = SpreadsheetApp.create(name).getId();
var file = DriveApp.getFileById(fileId);
DriveApp.getFolderById("### folder ID ###").addFile(file);
file.getParents().next().removeFile(file);
流量:
  • 创建新的电子表格到根文件夹
  • 将特殊文件夹添加到已创建电子表格的父文件夹中
  • 从创建的电子表格的父文件夹中删除根文件夹

  • 2.使用驱动器API 这可以直接在特殊文件夹中创建新的电子表格。当您使用它时,您可以通过复制并将其粘贴到脚本编辑器来使用它然后,请在高级谷歌服务和API控制台启用驱动器API。

    Drive.Files.insert({
      "mimeType": "application/vnd.google-apps.spreadsheet",
      "parents": [{"id": "### folder ID ###"}],
      "title": name
    });
    
    在高级Google服务中启用驱动器API
    • 关于脚本编辑器
      • 资源->高级谷歌服务
      • 打开驱动器API v2
    在API控制台启用驱动器API
    • 关于脚本编辑器
      • 资源->云平台项目
      • 查看API控制台
      • 开始时,单击启用API并获取密钥等凭据
      • 在左侧,单击“库”
      • 在搜索API和服务时,输入“驱动API”。然后单击GoogleDriveAPI
      • 单击启用按钮

    参考资料:
    • 高级谷歌服务:
    • 驱动器API v2:
    如果我误解了你的问题,我很抱歉

    更新日期:2020年8月28日: 截止到,
    addFile(File)
    addFolder(Folder)
    removeFile(File)
    removeFolder(Folder)
    已被弃用。从2020年7月27日起,将使用
    文件.moveTo(目的地)
    文件夹.moveTo(目的地)

    这样,可以按如下方式更改上述示例脚本

    发件人: 致: 参考资料:

    我使用了选项2,效果不错。谢谢你的帮助help@alexander科伊,欢迎你。也谢谢你。如果您的问题已解决,请按“接受”按钮。与你有相同问题的其他人也可以将你的问题作为可以解决的问题。如果你找不到按钮,尽管告诉我@亚历山大·考伊,给您带来不便,我很抱歉。你可以在这里看到@亚历山大·考伊谢谢。@亚历山大·考伊:)
    var folderId = "###";
    var fileId = SpreadsheetApp.create("sample name").getId();
    var file = DriveApp.getFileById(fileId);
    DriveApp.getFolderById(folderId).addFile(file);
    file.getParents().next().removeFile(file);
    
    var folderId = "###";
    var fileId = SpreadsheetApp.create("sample name").getId();
    var file = DriveApp.getFileById(fileId);
    var folder = DriveApp.getFolderById(folderId);
    file.moveTo(folder);