Google相册中的初学者。我正在尝试将数据从一个工作簿传输到Google工作表中的一个主工作簿。我需要它在应用程序脚本中,因为它将嵌入到按钮中。不幸的是,我提出的代码没有按计划进行。
这是我的代码
function myFunction() {
//get the date from current Spreadsheet
// C3 J6 F10-F14
var sourcesheet = SpreadsheetApp.getActiveSheet();
var analyst = sourcesheet.getRange('C3');
var analystVal = analyst.getValues();
var finalScore= sourcesheet.getRange('J6');
var finalScoreVal = finalScore.getValues();
var communication= sourcesheet.getRange('F10');
var communicationVal = communication.getValues();
var criteria1= sourcesheet.getRange('F11');
var criteria1Val = criteria1.getValues();
var criteria2= sourcesheet.getRange('F12');
var criteria2Val = criteria2.getValues();
var criteria3= sourcesheet.getRange('F13');
var criteria3Val = criteria3.getValues();
var criteria4= sourcesheet.getRange('F14');
var criteria4Val = criteria4.getValues();
//Open new Spreadsheet & paste the data
var megaform = SpreadsheetApp.openById("1H0v-rFqL4EKvixi5oTVJ65nTxnEzHJlPmu5SUrkgJp4");
Logger.log(megaform.getLastRow());
megaform.getActiveSheet().getRange(megaform.getLastRow()+1, 3).setValues(analystVal);
megaform.getActiveSheet().getRange(megaform.getLastRow()+1, 4).setValues(finalScoreVal);
megaform.getActiveSheet().getRange(megaform.getLastRow()+1, 5).setValues(communicationVal);
megaform.getActiveSheet().getRange(megaform.getLastRow()+1, 6).setValues(criteria1Val);
megaform.getActiveSheet().getRange(megaform.getLastRow()+1, 7).setValues(criteria2Val);
megaform.getActiveSheet().getRange(megaform.getLastRow()+1, 8).setValues(criteria3Val);
megaform.getActiveSheet().getRange(megaform.getLastRow()+1, 9).setValues(criteria4Val);
}
基本上一旦这个工作,我计划将它从多个工作簿扩展为多个工作簿到主工作簿。 提前谢谢。
答案 0 :(得分:0)
我决定将所需数据放入数组中,而不是在对象中使用名称值对。我还选择将数据作为主电子表格中的新行附加。您可以根据需要进行修改。
function getMyData() {
var ss=SpreadsheetApp.getActive();
var sh=ss.getSheetByName('Sheet1');
var rg=sh.getDataRange();
var vA=rg.getValues();
var dtA=[vA[2][2],vA[5][9],vA[9][5],vA[10][5],vA[11][5],vA[12][5],vA[13][5]];// C3 J6 F10-F14
var dsA=[];
for(var i=0;i<dtA.length;i++){
dsA.push(Utilities.formatDate(new Date(dtA[i]),Session.getScriptTimeZone(),"E MM dd, yyyy"));
}
appendToMasterData(dsA);
}
function appendToMasterData(dA){
var ss=SpreadsheetApp.openById('1auR3L1hTLw_P0fSJ8MJ470nYr-rVfAxvCUCLcW9Nl20');
var sh=ss.getSheetByName('Sheet1');
sh.appendRow(dA)
}
资料单:
您的数据以浅绿色突出显示,并且都是日期。
主表: