首页 > 解决方案 > 删除文件夹中每个文件的每张纸的前两行

问题描述

我正在尝试创建一个脚本,该脚本在执行时将删除电子表格中每个文件夹的每张纸的前两行。

问题是我有大约 50 个电子表格,全部包含大约 15 张纸,因此单独执行它们需要相当长的时间,但我不知道从哪里开始编写代码。

漫长的游戏是这些工作表将全部按工作表名称合并,即电子表格 1 的工作表 CB 将与电子表格 2/3/4 的工作表 CB 合并,依此类推,不确定这是否可能,但我需要得到在我开始查看该任务之前,将行标题作为第一行。

希望有人可以为我最初的问题指出正确的方向。

这是我到目前为止的代码;

function myFunction() {

/* Retrieve the desired folder */
var myFolder = DriveApp.getFolderById("1CFkTW0xR50psbVzu35_EsW-ytSeTqoKz");

/* Get all spreadsheets that resided on that folder */
var spreadSheets = myFolder.getFilesByType("application/vnd.google-apps.spreadsheet");

/* Iterate over the spreadsheets over the folder */
while(spreadSheets.hasNext()) {

var sheet = spreadSheets.next();

/* Open the spreadsheet */
var spreadSheet = SpreadsheetApp.openById(sheet.getId());

/* Get all its sheets */
for(var y in spreadSheet.getSheets()) {

  /* Get Rows to delete */
  var Rnage = spreadSheet.deleteRow(2)

   }
 }      
}

提前致谢

标签: google-apps-scriptgoogle-sheets

解决方案


尝试这个:

function myFunction() {
  var myFolder=DriveApp.getFolderById("1CFkTW0xR50psbVzu35_EsW-ytSeTqoKz");
  var spreadSheets= myFolder.getFilesByType("application/vnd.google-apps.spreadsheet");
  while(spreadSheets.hasNext()) {
    var spreadsheet = spreadSheets.next();
    var ss=SpreadsheetApp.openById(spreadsheet.getId());
    var shts=ss.getSheets();
    for(var i=0;i<shts.length;i++) {
      shts[i].deleteRows(1, 2);
    }
  }      
}

推荐阅读