Google Apps 脚本 - 读取电子表格数据、循环并将数据写回

jjo*_*312 4 google-apps-script

我正在寻找一些帮助,以按行循环遍历电子表格中的一组数据,然后将第一个单元格中的值写入新工作表,然后将各行中的每个单元格值写入。

这是一组示例数据的链接。 样本数据

上述电子表格中的 Sheet1 显示了原始数据。我想读取该数据并将其写入第二张 (2),以便它看起来像上述链接的第二张上的内容。

这是我当前的代码,但它将所有数据写入单个列。

function myfunction() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var sheet2 = 
      SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Sheet2');
  var data = sheet.getDataRange().getValues();
  for (var i = 0; i < data.length; i++)  {
    for (var j = 0; j < data[i].length; j++) {
      var iava_value = (data[i][0]);
      var lastRow = sheet2.getLastRow();           
      sheet2.getRange(lastRow +1, +1).setValue(data[i][j]);
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

jjo*_*312 5

这是我试图做的事情的工作版本。

function transpose() {
  var sheet = 
     SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Sheet1');
  var sheet2 = 
     SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Sheet2');
  var data = sheet.getDataRange().getValues();  
  var myRA = new Array(2); 
  for (var i = 0; i < data.length; i++)  {
    //GET IAVA No
  var iava_no = data[i][0];    

    for (var j = 1; j < data[i].length; j++) {
      var plugin_id = (data[i][j]);      

    if(plugin_id === ""  || plugin_id =="n"  || plugin_id == "a"){        
     break;        
    }
    else
    {
    Logger.log(plugin_id);
    var lastrow = sheet2.getLastRow();      
    sheet2.getRange(lastrow + 1, 1).setValue(data[i][0]);        
    sheet2.getRange(lastrow + 1, 2).setValue(data[i][j]);
   }
 }
 }
 }
Run Code Online (Sandbox Code Playgroud)