Merge Multiple Google Spreadsheets into One Sheet

前端 未结 2 941
醉梦人生
醉梦人生 2021-01-20 19:50

I have a couple of Google Spreadsheets. This Spreadsheets have the same columns number and columns names, but diffrent data.

I want to merge all of this Spreadsheets

相关标签:
2条回答
  • 2021-01-20 19:52

    You can use Google Apps Scripts for this.

    var ss = SpreadsheetApp.getActiveSpreadsheet();
    var All = ss.insertSheet("All-Values");
    
    function TotalsSheet() {
      var totaldata = [];
      var sheets = ss.getSheets();
      var totalSheets = 2;
    
      for (var i=0; i < totalSheets; i++) {
        var sheet = sheets[i];
        var range = sheet.getDataRange();
        var values = range.getValues();
    
        for (var row in values) {
          totaldata.push(values[row]);
        }
      }
      return totaldata; 
    }
    
    function Start() {
      var totaldata = TotalsSheet();
      for (var i =0; i < totaldata.length; i++) {
        All.appendRow(totaldata[i]);
      } 
    }
    
    0 讨论(0)
  • 2021-01-20 20:07

    Short answer

    Use embedded arrays. The simplest form for spreadsheets with regional settings that use dot as decimal separator are

    • ={A1:A2;B1:B2} for vertical merging and
    • ={A1:A2,B1:B2} for horizontal merging.

    Explanation

    To merge vertically two ranges,

    • for spreadsheets using dot as a decimal separator and comma as function parameter separator

      ={Sheet1!A1:B5;Sheet2!A1:B5}

    • for spreadsheets using comma as a decimal and semicolon as function parameter separator

      ={Sheet1!A1:B5\Sheet2!A1:B5}

    Reference

    • Using arrays in Google Sheets- Google Docs editors Help
    0 讨论(0)
提交回复
热议问题