Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.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 将完整Google电子表格保存到文件夹的脚本_Google Apps Script_Google Sheets - Fatal编程技术网

Google apps script 将完整Google电子表格保存到文件夹的脚本

Google apps script 将完整Google电子表格保存到文件夹的脚本,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我想创建一个函数,将电子表格保存到文件夹中。 我快到了,我想我只需要调整createFile类的synthax 这是我的密码: const spreadsheet2 = SpreadsheetApp.getActiveSpreadsheet(); var folder2 = DriveApp.getFoldersById("my_folder_id").next(); var filename2 = SpreadsheetApp.getActiveSpreadsheet().getActiveS

我想创建一个函数,将电子表格保存到文件夹中。 我快到了,我想我只需要调整
createFile
类的synthax

这是我的密码:

const spreadsheet2 = SpreadsheetApp.getActiveSpreadsheet();
var folder2 = DriveApp.getFoldersById("my_folder_id").next();
var filename2 = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getRange("B97").getValue();

folder2.createFile([I think here is my missing command].setName(filename2));
有人能完成吗?

  • 您希望将活动电子表格复制到特定文件夹
  • 您想使用
    getActiveSheet().getRange(“B97”).getValue()
    中的文件名
  • 您希望使用谷歌应用程序脚本实现这一点
如果我的理解是正确的,那么这个答案呢?请把这看作是几个可能的答案之一

修改点:
  • DriveApp.getFoldersById(“我的文件夹id”).next()
    ,没有
    getFoldersById
    的方法。如果要使用文件夹ID,请使用
    DriveApp.getFolderById(folderId)
  • 不幸的是,无法使用
    createFile()
    直接创建电子表格。在您的情况下,为了复制活动电子表格,可以使用
    makeCopy()
当上述各点反映到脚本中时,它将变成如下所示

修改脚本: 参考资料:

我不得不为我糟糕的英语技能道歉。关于“创建函数以保存电子表格”和您的脚本,很遗憾,我无法理解您的目标。那么你能解释一下你的目标的细节吗?例如,您想复制活动电子表格?@Tanaike这是正确的。在这种情况下,我想复制整个电子表格(不仅仅是一张)到一个新的谷歌表格文件谢谢你的回复。根据你的回复,我提出了一个修改后的脚本。你能确认一下吗?如果我误解了你的问题,而这不是你想要的方向,我道歉。
var folderId = "###";  // Please set the folder ID you want to put the copied Spreadsheet.

const spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var filename2 = spreadsheet.getActiveSheet().getRange("B97").getValue();

var folder = DriveApp.getFolderById(folderId);
DriveApp.getFileById(spreadsheet.getId()).makeCopy(filename2, folder);