【问题标题】:How to copy specific rows from 3 google spreadsheet to another spreadsheet using google apps script如何使用谷歌应用脚​​本将特定行从 3 个谷歌电子表格复制到另一个电子表格
【发布时间】:2012-08-05 06:11:41
【问题描述】:

我有一个名为 Main-spreadsheet 的电子表格,其中有 4 个名为 sheet1、sheet2、sheet3 和 result 的电子表格。我想将 sheet1,sheet2,sheet3 中的条件数据复制到结果表中。谁能帮帮我????

这是我的代码:

  var ss = SpreadsheetApp.openById(DATA_SPREADSHEET_ID);
  var sheet = ss.getSheets()[3];

  var dataSs = SpreadsheetApp.openById(DATA_SPREADSHEET_ID);
  var dataSheet = dataSs.getSheets()[0];

  // Fetch all the data
  var data = getRowsData(dataSheet);

  // This is the data we want to display
  var columnNames = ["Name", "AC link", "Type"];

  // Index data by type
  var dataBytype = {};
  var types = [];
  for (var i = 0; i < data.length; ++i) {
    var rowData = data[i];
    if (!dataBytype[rowData.type]) {
      dataBytype[rowData.type] = [];
      types.push(rowData.type);
    }
    dataBytype[rowData.type].push(rowData);
  }

  types.sort();
  var headerBackgroundColor = dataSheet.getRange(1, 1).getBackgroundColor();
  for (var i = 0; i < types.length; ++i) {
    var sheet = ss.getSheetByName(types[i]) || 
        ss.insertSheet(types[i], ss.getSheets().length);
    sheet.clear();
    var headersRange = sheet.getRange(1, 1, 1, columnNames.length);
    headersRange.setValues([columnNames]);
    headersRange.setBackgroundColor(headerBackgroundColor);
    setRowsData(sheet, dataBytype[types[i]]);
  }

}

它当前从 sheet1 复制数据并按类型列创建一个新工作表

【问题讨论】:

    标签: javascript google-apps-script google-sheets


    【解决方案1】:

    在这个论坛和the old one 上有几十个类似的问题和答案...快速搜索将帮助您找到您正在寻找的内容为。

    【讨论】:

    • 我已经完成了,但我的问题是如何从多张纸中选择数据(我可以从单张纸中选择数据并复制到另一张纸)
    • 例如你可以使用getSheetByName()...
    • 能否请您粘贴您尝试过的代码以及您可能看到的任何错误
    猜你喜欢
    • 2011-05-29
    • 2021-06-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-22
    • 1970-01-01
    • 2019-02-06
    • 1970-01-01
    相关资源
    最近更新 更多