迭代文件以获取谷歌脚本

时间:2017-07-19 04:24:06

标签: google-apps-script

我想要使用FormResponse访问一堆表单文件 类。我已经设法遍历代码中显示的所有文件 这里:

var folder = DriveApp.getFolderById('abcdefgh123456');
var files = folder.getFiles();

  while ( files.hasNext() ) {
  var str = files.next().getName(); 

  if (/^Approval\sfor/.test(str)) {  // test "Approval for" string 

    Logger.log('*** This is Approval file : ' + str); 
    var file = files.next();
    var fileId = file.getId();
    Logger.log('*** fileID : ' + fileId);
    var file = DriveApp.getFileById(fileId); 

    // var form = FormApp.openById(fileId);  //ERROR Invalid ID   
  }  
}

但是对于我的生活,我无法访问表单对象。我相信这是一个简单的答案。也许我的概念还不够强大。任何帮助表示赞赏。谢谢!

1 个答案:

答案 0 :(得分:1)

好的,我终于找到了解决方案。这似乎是我可以的原因 不访问表单对象是由于id与不匹配 文件本身。语句" var file = files.next();"应该 在" while(files.hasNext())"。

下添加
while ( files.hasNext() ) {

  var file = files.next(); 
  var str = file.getName();

  if (/^Approval\sfor/.test(str)) {  // test "Approval for" string 

   Logger.log('*** This is Approval file : ' + str); 
   var fileId = file.getId();
   Logger.log('*** fileID : ' + fileId);
   var file = DriveApp.getFileById(fileId); 
   var form = FormApp.openById(fileId);  //Works now

  }  

}