如何将宏应用到包含 google 个电子表格的文件夹

how to apply a macro to a folder of google spreadsheets

我是 JavaScript 的新手,但有 Visual Basic 方面的经验。我真正需要的是编写一个宏,我可以将其放入装满 google 电子表格的文件夹中,并在特定单元格中写入“N/A”。我知道我想使用独立脚本。

我已经写好了“N/A”部分,但是不知道“应用到这个文件夹中的所有文件”部分怎么写。有什么提示吗?

您需要遍历选定的驱动器(使用DriveApp)并获取所有电子表格文件。然后遍历每个电子表格文件的所有工作表并替换那些值。

function doTest() {
  var driveId = <driveId>;
  var drive = DriveApp.getFolderById(driveId);
  // fetch spreadsheets files on your drive folder
  var spreadsheets = drive.getFilesByType(MimeType.GOOGLE_SHEETS);

  // traverse all the spreadsheets
  while (spreadsheets.hasNext()) {
    var spreadsheetFile = spreadsheets.next();
    var spreadsheet = SpreadsheetApp.openById(spreadsheetFile.getId());
    // traverse all sheets per spreadsheet
    spreadsheet.getSheets().forEach(function (sheet) {
      // each sheet, replace B16:B19 values with 'N/A'
      sheet.getRange('B16:B19').setValue('N/A');
    });
  }
}

参考: