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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/EmptyTag/132.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 Drive上)获取特定文件(Google工作表),然后更改单元格的值_Google Apps Script_Google Sheets_Google Drive Api_Google Sheets Api - Fatal编程技术网

Google apps script 从子文件夹(在Google Drive上)获取特定文件(Google工作表),然后更改单元格的值

Google apps script 从子文件夹(在Google Drive上)获取特定文件(Google工作表),然后更改单元格的值,google-apps-script,google-sheets,google-drive-api,google-sheets-api,Google Apps Script,Google Sheets,Google Drive Api,Google Sheets Api,我正在尝试使用Google脚本更改多个Google工作表中Google工作表单元格的值 我有一个包含80个子文件夹的文件夹,每个代理对应一个子文件夹。在每个子文件夹中,我都有一个标题为“时间管理代理视图-代理名称”的Google工作表。我想将每张图纸[1]中单元格B4的值设置为一个新值 我试过这个,但它不起作用。当我尝试记录agentSheet时,结果是空白的,这可能从代码中可以明显看出,我是非常新的,没有受过这方面的培训;)谢谢你的帮助 菲利普 我明白了 var str = 'Time Man

我正在尝试使用Google脚本更改多个Google工作表中Google工作表单元格的值

我有一个包含80个子文件夹的文件夹,每个代理对应一个子文件夹。在每个子文件夹中,我都有一个标题为“时间管理代理视图-代理名称”的Google工作表。我想将每张图纸[1]中单元格B4的值设置为一个新值

我试过这个,但它不起作用。当我尝试记录agentSheet时,结果是空白的,这可能从代码中可以明显看出,我是非常新的,没有受过这方面的培训;)谢谢你的帮助

菲利普

我明白了

var str = 'Time Management Agent View'
var regex = /.*/
var agentsFolderId = 'Folder_ID';

  var folders = DriveApp.getFolderById(agentsFolderId).getFolders();

  while (folders.hasNext()) {
    var agentFolder = folders.next();
    var allAgentsSheets = agentFolder.searchFiles('title contains "Time Management Agent View"');
    Logger.log(agentFolder);
    Logger.log(allAgentsSheets);

    while (allAgentsSheets.hasNext()){
      var agentSheet = allAgentsSheets.next().getId();
      SpreadsheetApp.setActiveSpreadsheet(SpreadsheetApp.openById(agentSheet));

      var ss = SpreadsheetApp.getActiveSpreadsheet();
      var sheet = ss.getSheets()[1];
      var cell = sheet.getRange("B4");
      cell.setFormula('New_Formula');
      var cellContent = cell.getValue();

您也可以在此区域简单地执行以下操作:

while (allAgentsSheets.hasNext()){
      var ss = SpreadsheetApp.openById(allAgentsSheets.next().getId());
      var sheet = ss.getSheets()[1];

您不需要使用setActive和getActive。

谢谢您的帮助。我已经实施了你的建议,并且开始更好地理解这一切。
while (allAgentsSheets.hasNext()){
      var ss = SpreadsheetApp.openById(allAgentsSheets.next().getId());
      var sheet = ss.getSheets()[1];