Google apps script Google Drive中的特定文件夹中是否存在循环浏览所有电子表格的方法?

Google apps script Google Drive中的特定文件夹中是否存在循环浏览所有电子表格的方法?,google-apps-script,google-sheets,Google Apps Script,Google Sheets,现在我有了一个脚本,可以在电子表格中的所有工作表中循环。我的文件夹里有很多电子表格。如何循环浏览包含多个电子表格的Google Drive文件夹中的所有电子表格 我曾尝试在一个电子表格中循环浏览所有活动的工作表,但我不知道如何循环浏览包含文件夹中一张工作表的所有电子表格 每个文件夹之间的差异是月份 function checkSales(){ var app = SpreadsheetApp; var activeSheet = app.getActiveSpreadsheet().ge

现在我有了一个脚本,可以在电子表格中的所有工作表中循环。我的文件夹里有很多电子表格。如何循环浏览包含多个电子表格的Google Drive文件夹中的所有电子表格

我曾尝试在一个电子表格中循环浏览所有活动的工作表,但我不知道如何循环浏览包含文件夹中一张工作表的所有电子表格

每个文件夹之间的差异是月份

 function checkSales(){

 var app = SpreadsheetApp;
 var activeSheet = app.getActiveSpreadsheet().getSheets();
 //var data=activeSheet.getDataRange().getValues();

 //loop through sheets to look for value
 for (var i in activeSheet) {

 SpreadsheetApp.setActiveSheet(activeSheet[i])
 var sheet = app.getActiveSheet();
 var data = activeSheet[i].getDataRange().getValues();

 var emailAddress=SpreadsheetApp.getActiveSpreadsheet()
.getSheetByName("Battery").getRange("H26").getValue();
 var resultArr=[];
 var xTitle = 'Part Numbers'; // XAxis Title
 var yTitle = 'Quantity'; // YAxis Title
 var column = sheet.getRange("A1:A22");
 column.setNumberFormat("@");

 //To Loop through the whole data Rows
 for(var i=1;i<data.length;i++)
 {
    //Takes columns from L to S (To loop through the Columns)
    for(var j=11;j<19;j++)
     {
       var cellVal=data[i][j];
       Logger.log(cellVal)
       if(cellVal>0)
       {
          //Stores the Part No, Month Header Value of the Column, Cell 
          Value which is greater then 0
          resultArr.push([data[i][0],data[0][j],cellVal])
        }
      }
   }
    if(resultArr.length>0)
       {
          var subject = 'Range exceeded Alert' + "" + sheet.getName();

          //Creates a body through the obtained values
          var body='';
          for(var m=0;m<resultArr.length;m++)
           {
            body+="For Part No "+resultArr[m][0].toString()+" and Month 
           "+resultArr[m][1]
           .toString()+", Value is "+resultArr[m][2].toString()+"<br>";
           }

       }

      }

   }
功能检查销售(){
var app=电子表格应用程序;
var activeSheet=app.getActiveSpreadsheet().getSheets();
//var data=activeSheet.getDataRange().getValues();
//在表格中循环查找值
用于(活动表中的变量i){
电子表格app.setActiveSheet(activeSheet[i])
var sheet=app.getActiveSheet();
var data=activeSheet[i].getDataRange().getValues();
var emailAddress=SpreadsheetApp.getActiveSpreadsheet()
.getSheetByName(“电池”).getRange(“H26”).getValue();
var resultar=[];
var xTitle='零件号';//XAxis标题
var yTitle='Quantity';//YAxis Title
var列=sheet.getRange(“A1:A22”);
列。setNumberFormat(“@”);
//循环遍历整个数据行
对于(var i=1;i0)
{
var subject='超出范围警报'+''+sheet.getName();
//通过获取的值创建实体
变量体=“”;

对于(var m=0;m,您可以使用此

function checkSales(){
  var file, files = DriveApp.getFolderById(*****id).getFiles(); 
  //put the id of your target folder in the getFolderById()
  while (files.hasNext()) {
    file = files.next();
   var activeSpreadSheet = SpreadsheetApp.open(file);
    var sheets = activeSpreadSheet.getSheets();

  //loop through sheets to look for value
  for (var sheetIndex = 0; sheetIndex < sheets.length; sheetIndex++) {


  var sheet = sheets[sheetIndex]
  var data = sheet.getDataRange().getValues();

  var emailAddress=activeSpreadSheet.getSheetByName("Battery").getRange("H26").getValue();

/* I edited until here, did not touch code below */

  var resultArr=[];
  var xTitle = 'Part Numbers'; // XAxis Title
  var yTitle = 'Quantity'; // YAxis Title
  var column = sheet.getRange("A1:A22");
  column.setNumberFormat("@");

  //To Loop through the whole data Rows
  for(var i=1;i<data.length;i++)
  {
   //Takes columns from L to S (To loop through the Columns)
     for(var j=11;j<19;j++)
     {
      var cellVal=data[i][j];
      Logger.log(cellVal)
      if(cellVal>0)
      {
        //Stores the Part No, Month Header Value of the Column, Cell 
        Value which is greater then 0
        resultArr.push([data[i][0],data[0][j],cellVal])
      }
     }
   }
   if(resultArr.length>0)
   {
      var subject = 'Range exceeded Alert' + "" + sheet.getName();

      //Creates a body through the obtained values
      var body='';
      for(var m=0;m<resultArr.length;m++)
       {
        body+="For Part No "+resultArr[m][0].toString()+" and Month 
       "+resultArr[m][1]
       .toString()+", Value is "+resultArr[m][2].toString()+"<br>";
       }

   }
  }

  }

 }
功能检查销售(){
var file,files=DriveApp.getFolderById(****id).getFiles();
//将目标文件夹的id放入getFolderById()中
while(files.hasNext()){
file=files.next();
var activeSpreadSheet=SpreadsheetApp.open(文件);
var sheets=activeSpreadSheet.getSheets();
//在表格中循环查找值
对于(var sheetIndex=0;sheetIndex对于(var m=0;m,您可以使用此

function checkSales(){
  var file, files = DriveApp.getFolderById(*****id).getFiles(); 
  //put the id of your target folder in the getFolderById()
  while (files.hasNext()) {
    file = files.next();
   var activeSpreadSheet = SpreadsheetApp.open(file);
    var sheets = activeSpreadSheet.getSheets();

  //loop through sheets to look for value
  for (var sheetIndex = 0; sheetIndex < sheets.length; sheetIndex++) {


  var sheet = sheets[sheetIndex]
  var data = sheet.getDataRange().getValues();

  var emailAddress=activeSpreadSheet.getSheetByName("Battery").getRange("H26").getValue();

/* I edited until here, did not touch code below */

  var resultArr=[];
  var xTitle = 'Part Numbers'; // XAxis Title
  var yTitle = 'Quantity'; // YAxis Title
  var column = sheet.getRange("A1:A22");
  column.setNumberFormat("@");

  //To Loop through the whole data Rows
  for(var i=1;i<data.length;i++)
  {
   //Takes columns from L to S (To loop through the Columns)
     for(var j=11;j<19;j++)
     {
      var cellVal=data[i][j];
      Logger.log(cellVal)
      if(cellVal>0)
      {
        //Stores the Part No, Month Header Value of the Column, Cell 
        Value which is greater then 0
        resultArr.push([data[i][0],data[0][j],cellVal])
      }
     }
   }
   if(resultArr.length>0)
   {
      var subject = 'Range exceeded Alert' + "" + sheet.getName();

      //Creates a body through the obtained values
      var body='';
      for(var m=0;m<resultArr.length;m++)
       {
        body+="For Part No "+resultArr[m][0].toString()+" and Month 
       "+resultArr[m][1]
       .toString()+", Value is "+resultArr[m][2].toString()+"<br>";
       }

   }
  }

  }

 }
功能检查销售(){
var file,files=DriveApp.getFolderById(****id).getFiles();
//将目标文件夹的id放入getFolderById()中
while(files.hasNext()){
file=files.next();
var activeSpreadSheet=SpreadsheetApp.open(文件);
var sheets=activeSpreadSheet.getSheets();
//在表格中循环查找值
对于(var sheetIndex=0;sheetIndex对于(var m=0;mHi我对应用程序脚本不熟悉。我尝试了your代码,但出现错误“指定的工作表必须是电子表格的一部分”你能看看我的代码吗:是chart.gs文件编辑了我的答案。如果还有任何问题,请告诉我。哇,非常感谢!哇ked perfectlyHi我对应用程序脚本不熟悉。我尝试了your代码,但出现错误“指定的工作表必须是电子表格的一部分”你能看看我的代码吗:是chart.gs文件编辑了我的答案。如果还有任何问题,请告诉我。哇,非常感谢!工作完美