使用Google Script如何将单元格值从一个工作表传输到另一个工作表的开放单元格值

时间:2017-05-26 00:43:07

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

我一直在尝试设计一张Google表格,该表格从Google表格的表格中获取回复,并将“仅限值”转移到另一张Google表格中。由于收集的信息进入不同的小区位置,因此必须逐个小区地传输这些值。目标表单的列数多于响应表单,因此可以在工作作业进行时将更多信息放入目标表单。我正在将我的Google表格公开用于输入主页是Testing Grounds,我需要将“表单响应销售”表单元格转移到“作业状态”表单某些单元格。我到目前为止创建的脚本有一个为每个单元格指定的变量。这是我到目前为止创建的,顶部变量将用作计数器,我有点工作,但我现在似乎无法导入它。我尝试使用内置于Google脚本中的触发器来运行onEdit函数。我对目前共享工作表中脚本的所有编辑都很好。感谢任何可能是一个简单问题的答案。

var resCount = 1;
var resRow = 0;
var pastTime = 0;
var jobCount = 2;
var jobRow = 0;


function createJobStatus() {
 //Response Refrence Variables
   var ss = SpreadsheetApp.getActiveSpreadsheet();
   var sheetName = "Form Responses Sales";
   var sourceSheet = ss.getSheetByName(sheetName);

  var rowRange = sourceSheet.getActiveRange();
  var responRow = rowRange.getLastRow();
  var getRow = [];
  getRow = responRow + resCount;
Logger.log(responRow);
Logger.log(getRow);

  //Sales Report Response Variables

      var Timestamp = sourceSheet.getRange(getRow,1);
      var salesShipDate = sourceSheet.getRange(getRow,23);
      var salesResponse1 = sourceSheet.getRange(getRow,2);
      var salesResponse2 = sourceSheet.getRange(getRow,3);
      var salesResponse3 = sourceSheet.getRange(getRow,4);
      var salesResponse4 = sourceSheet.getRange(getRow,5);
      var salesResponse5 = sourceSheet.getRange(getRow,6);
      var salesResponse6 = sourceSheet.getRange(getRow,7);
      var salesResponse7 = sourceSheet.getRange(getRow,8); 
      var salesResponse8 = sourceSheet.getRange(getRow,9); 
      var salesResponse9 = sourceSheet.getRange(getRow,10); 
      var salesResponse10 = sourceSheet.getRange(getRow,11); 
      var salesResponse11 = sourceSheet.getRange(getRow,12);
      var salesResponse12 = sourceSheet.getRange(getRow,13);
      var salesResponse13 = sourceSheet.getRange(getRow,14); 
      var salesResponse14 = sourceSheet.getRange(getRow,15); 
      var salesResponse15 = sourceSheet.getRange(getRow,16);
      var salesResponse16 = sourceSheet.getRange(getRow,17);
      var salesResponse17 = sourceSheet.getRange(getRow,18);
      var salesResponse18 = sourceSheet.getRange(getRow,19);
      var salesResponse19 = sourceSheet.getRange(getRow,20);
      var salesResponse20 = sourceSheet.getRange(getRow,21);
      var salesResponse21 = sourceSheet.getRange(getRow,22);
      var salesResponse22 = sourceSheet.getRange(getRow,24);
      var salesResponse23 = sourceSheet.getRange(getRow,25);
      var salesResponse24 = sourceSheet.getRange(getRow,26);


  //Job Status Variables 

   var destinSheetName = "Job Status ";
   var destinSheet = ss.getSheetByName(destinSheetName);

   var destinRowRange = destinSheet.getActiveRange();
   var destinRow = destinRowRange.getLastRow();
   var putRow = [];
   putRow = destinRow + jobCount;
Logger.log(destinRow);
Logger.log(putRow);

      var companyNumber = destinSheet.getRange(putRow,26);
      var jobStatusB = destinSheet.getRange(putRow,29);
      var jobStatusC = destinSheet.getRange(putRow,30);
      var jobStatusD = destinSheet.getRange(putRow,31);
      var jobStatusE = destinSheet.getRange(putRow,32);
      var jobStatusF = destinSheet.getRange(putRow,33);
      var jobStatusG = destinSheet.getRange(putRow,34);
      var jobStatusH = destinSheet.getRange(putRow,27); 
      var jobStatusI = destinSheet.getRange(putRow,45); 
      var jobStatusJ = destinSheet.getRange(putRow,54); 
      var jobStatusK = destinSheet.getRange(putRow,63); 
      var jobStatusL = destinSheet.getRange(putRow,72);
      var jobStatusM = destinSheet.getRange(putRow,81);
      var jobStatusN = destinSheet.getRange(putRow,90); 
      var jobStatusO = destinSheet.getRange(putRow,94); 
      var jobStatusP = destinSheet.getRange(putRow,103);
      var jobStatusQ = destinSheet.getRange(putRow,112);
      var jobStatusR = destinSheet.getRange(putRow,120);
      var jobStatusS = destinSheet.getRange(putRow,130);
      var jobStatusT = destinSheet.getRange(putRow,140);
      var jobStatusU = destinSheet.getRange(putRow,150);
      var jobStatusV = destinSheet.getRange(putRow,160);
      var jobStatusW = destinSheet.getRange(putRow,25);
      var jobStatusX = destinSheet.getRange(putRow,116);
      var jobStatusY = destinSheet.getRange(putRow,117);  
      var jobStatusZ = destinSheet.getRange(putRow,164);


  if(getRow >> resRow){
    Timestamp.copyTo(companyNumber), {valuesOnly:true};
    salesShipDate.copyTo(jobStatusB), {valuesOnly:true};  
    salesResponse1.copyTo(jobStatusC), {valuesOnly:true};
    salesResponse2.copyTo(jobStatusD), {valuesOnly:true};
    salesResponse3.copyTo(jobStatusE), {valuesOnly:true};
    salesResponse4.copyTo(jobStatusF), {valuesOnly:true};
    salesResponse5.copyTo(jobStatusG), {valuesOnly:true};
    salesResponse6.copyTo(jobStatusH), {valuesOnly:true};
    salesResponse7.copyTo(jobStatusI), {valuesOnly:true};
    salesResponse8.copyTo(jobStatusJ), {valuesOnly:true};
    salesResponse9.copyTo(jobStatusK), {valuesOnly:true};
    salesResponse10.copyTo(jobStatusL), {valuesOnly:true};
    salesResponse11.copyTo(jobStatusM), {valuesOnly:true};
    salesResponse12.copyTo(jobStatusN), {valuesOnly:true};
    salesResponse13.copyTo(jobStatusO), {valuesOnly:true};
    salesResponse14.copyTo(jobStatusP), {valuesOnly:true};
    salesResponse15.copyTo(jobStatusQ), {valuesOnly:true};
    salesResponse16.copyTo(jobStatusR), {valuesOnly:true};
    salesResponse17.copyTo(jobStatusS), {valuesOnly:true};
    salesResponse17.copyTo(jobStatusT), {valuesOnly:true};
    salesResponse18.copyTo(jobStatusU), {valuesOnly:true};
    salesResponse20.copyTo(jobStatusV), {valuesOnly:true};
    salesResponse21.copyTo(jobStatusW), {valuesOnly:true};
    salesResponse22.copyTo(jobStatusX), {valuesOnly:true};
    salesResponse23.copyTo(jobStatusY), {valuesOnly:true};
    salesResponse24.copyTo(jobStatusZ), {valuesOnly:true};

 resCount = getRow + 1;
 resRow = getRow;
 pastTime = Timestamp;
 jobCount = putRow + 1 ;
 jobRow = putRow;

    }

}

0 个答案:

没有答案