将一个值设置为多列

Set a value into multiple columns

本文关键字:设置 一个      更新时间:2023-09-26

我想从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将执行,如果不是什么都不会发生,

(我更新/编辑帖子)

数据1、数据2和数据3是单个值还是数组?

如果它们是单个值,我假设给定setValues([[data1, data2, data3]]);所需的范围高度为1。

现在的方法可以在使用getRange(nextRow+1,mycolumn,3,1);(即列向量)时写入数据。

Google Spreadsheets将值设置和获取为行向量数组,即数组中的每个元素都是一行和一个值元素,这些值将成为该行中的列值。