如何将电子表格从根目录移动到我的活动文件夹?

时间:2013-08-09 23:01:46

标签: google-apps-script google-sheets google-docs

我使用以下代码创建新的电子表格。

function addNewSpreadsheetWithFolderShift()
{
var source = SpreadsheetApp.getActive();

var SSID=source.getId();
var fileInDocs = DocsList.getFileById(SSID);
var folder=fileInDocs.getParents()[0];
var folderName = folder.getName();
var folderID = folder.getId();
var TimeZone=Session.getTimeZone();
var DTStamp= Utilities.formatDate(new Date(), TimeZone, 'yyyy:MM:dd  HH:mm:ss  zzz');
var User=Session.getEffectiveUser().getEmail();
var output_name=DTStamp+"LineChecks"
var ssOut = SpreadsheetApp.create(output_name);  // Create a new spreadsheet, output_name.
ssOut.addToFolder(folder);
}

它在我的根目录中结束。我想把它放在我开始的目录中。我尝试使用addToFolder,但似乎只能使用它移动文件。有没有办法移动新创建的电子表格?

2 个答案:

答案 0 :(得分:0)

您可以使用DocsList服务在创建文件后移动文件,尝试如下:

  ...
  var ssOut = SpreadsheetApp.create(output_name);  // Create a new spreadsheet, output_name.
  var root = DocsList.getRootFolder();
  var folder = DocsList.getFolderById('your folder Id');// or use getFolderByName if you want
  var ssOutId = ssOut.getId();
  var newFile = DocsList.getFileById(ssOutId); // begin the 'move to folder process'
  newFile.addToFolder(folder);
  newFile.removeFromFolder(root);// had to do it in 2 separate steps 
}

答案 1 :(得分:0)

即使这个问题是2年,我还是认为我会发布更新的解决方案,因为DocsList已被弃用。我试图弄清楚同样的问题,并使用DriveApp.

来回答这个问题