将Google表单响应分为多行

时间:2019-01-14 23:01:51

标签: google-apps-script google-sheets

我的Google表单的一页可以选择多个选项。这些回应会在我的Google工作表中创建不同的列。尽管可以进行多个选择,但它们都来自同一类别,并且将它们分成多列使创建数据透视表变得很困难。我希望这些选择能产生新的一行。我已附上图片进行演示。 谢谢

results from google form

want the area in single column and hours in a single column

1 个答案:

答案 0 :(得分:0)

尝试一下:

我将A和B列的格式设置为日期,将C和D列的格式设置为时间

function reOrder() {
  var ss=SpreadsheetApp.getActive();
  var sh=ss.getActiveSheet();
  var rg=sh.getDataRange();
  var vA=rg.getValues();
  var vB=[['Date','Employee','Time In','Time Out','Location','Hours']];
  for(var i=1;i<vA.length;i++){
    var vR=replaceOneWithThree(vA[i]);
    for(var j=0;j<vR.length;j++){
      vB.push(vR[j]); 
    }
  }
  rg.clear();
  sh.getRange(1,1,vB.length,vB[0].length).setValues(vB);
}

function replaceOneWithThree(vA){
  var vR=[[vA[0],vA[1],vA[2],vA[3],vA[4],vA[5]],[vA[0],vA[1],vA[2],vA[3],vA[6],vA[7]],[vA[0],vA[1],vA[2],vA[3],vA[8],vA[9]]];
  return vR;
}