任何人都可以帮忙。
昨晚午夜之后,我的脚本开始出错,提示出现主题错误。
我已经粘贴了下面的代码,但是从本质上讲,它从一个工作表中提取数据,并在另一个工作表中进行填充。如果有帮助,很高兴提供指向测试数据的链接。
提前致谢
铝
function dBYd() {
var ss,s1,s2,data,dlabel,hdrs,colnum,data2=[],data3=[],i,hsh=[[4,5],[5,6],[7,7],[10,4],[6,8],[19,14],[20,16],[21,15],[26,13],[31,2],[33,0]];
// [4,5]..Acc,[5,6]..Cq,[7,7]..DoA,[10,4]..C,[6,8]..CC,[19,14],[20,16],[21,15]..B/E/C,[26,13]..Pm,[31,2]..WU Total, [33,0]..Initials]
ss=SpreadsheetApp.getActiveSpreadsheet();
s1=ss.getSheetByName("CS");//<<name of "UI" sheet
s2=ss.getSheetByName("Admin-2020");//<<name or "Archive" sheet
data=s1.getDataRange().getValues();//<-------------all the data from the 'Front'sheet
dlabel=data[0][5];//<------------------------------the date in Front!F1. MUST BE FORMATTED AS DATE
hdrs=s2.getDataRange().getValues()[0].map(function(x) {return x*1;});//<---the dates in Row1 of Tab2 as numbers
colnum=hdrs.indexOf(dlabel*1.0)+1;//<--------------the column in Tab2 where the date from Front (as a number) is found
data=data.map(function(x) {return x[5];});//<------the sixth column (F) of Front
for (i=0;i<17;i++) data2.push(['']);//<------------a blank array to account for output
for (i in hsh) data2[hsh[i][1]]=[data[hsh[i][0]]];//<-----------the data from Front for output to Tab2
data2 = [].concat.apply([], data2);
var a1 = data2.slice(0,10);
var a2 = data2.slice(11,17);
for(var i in a1) a1[i]=[a1[i]];
for(var i in a2) a2[i]=[a2[i]];
s2.getRange(2,colnum,a1.length).setValues(a1);
s2.getRange(13,colnum,a2.length).setValues(a2);
}
最佳答案
请忽略上面的问题。我找到了解决方案。写入值的工作表上有一个错误。
谢谢
铝
关于error-handling - 范围的起始列太小。 (第50行,文件 “Clear Cells”),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/60053841/