Google Apps脚本 - sheet.getDataRange()。getValues();列作为对象

时间:2013-10-13 15:52:52

标签: google-apps-script google-sheets

我有一张包含多个列和行的工作表。我想逐列而不是按行读取数据。

sheet.getDataRange().getValues();

函数返回一个这样的数组[row1 [column,column ..],row2 [column,column ..]]等。我想要的是得到一个数组:[column1 [row,row ..] ,column2 [row,row ..]]等。

值得一提的是,列的行数不同。

你们对如何实现这一点有什么想法吗?

谢谢!

1 个答案:

答案 0 :(得分:3)

//* View Logger.log output in the Script Editor View > Logs

function test(a){
  sheet = SpreadsheetApp.getActiveSheet() 
  range = sheet.getDataRange().getValues();
  Logger.log(range);
  transposeRange = Transpose(range);
  Logger.log(transposeRange);
}

function Transpose(a){
  return Object.keys(a[0]).map( function (c) { return a.map(function (r) { return r[c];}); });
}