我想从我从sheet1获得的值设置一个值并将其传递给sheet2,这是我的代码
var ss = SpreadsheetApp.getActiveSpreadsheet();
var ss1 = ss.getSheetByName('sheet1');
var ss2 = ss.getSheetByName('sheet2');
nextrow = ToSheet.getLastRow();
nextcolum = ToSheet.getLastColumn();
function myfuction() {
var data1 = ss1.getRange(1,1).getValue()
var data2 = ss1.getRange(2,1).getValue()
var data3 = ss1.getRange(3,1).getValue()
var data4 = ss1.getRange(4,1).getValue()
var data5 = ss1.getRange(5,1).getValue()
var data6 = ss1.getRange(6,1).getValue()
var myarray1 = [[data1] , [data2], [data3]];
var myarray2 = [[data4] , [data5], [data6]];
var myarray3 = [data....data];
var myarray4 = [data...data];
var i = 0;
while(i < 3) {
if (myarray1[i].length != 0) { //Check if the one of value of array have a value
ss2.getRange(row, column, numRows, numColumns).setValues(myarray1)
//assume that the value of getrange(nextrow+1, 1, 1, 3)
}
if(myarray2[i].toString().length != 0 ) { //Check if the one of value of array have a value
ss2.getRange(row, column, numRows, numColumns).setValues(myarray2)
//assume that the value of getrange is nextrow+1, 1, 1, 3
}
if() {//a two if for myarray3 and myarray4 also
}
i++;
}
}
在while循环中我使用if来知道数组中的一个值(myarray1,myarray2)是否有值,如果结果是!= 0(有一个值),那么ss2.getRange将执行如果不是什么都不会发生,
(我更新/编辑帖子)
答案 0 :(得分:0)
data1,data2和data3是单个值还是数组?
如果它们是单个值,我假设给定的范围高度为1,则需要setValues([[data1, data2, data3]]);
。
现在,您使用getRange(nextRow+1,mycolumn,3,1);
(即列向量)时可以写入数据。
Google Spreadsheets设置并获取值作为rowvectors数组,即数组的每个元素都是一行,并且值的元素将成为该行中的列值。