1
我复制,从一个表的一些数据与代码,就几行另一片:与变量rng1Array
我选择数据的整行如何在从一张纸上复制数据时仅选择特定列?
for (var i = date2.length; i < date1.length; i++){
var rng1Array = sheet1.getRange(i+1,1,1,sheet1.getLastColumn()).getValues();
sheet2.getRange(i+1,1,1,sheet1.getLastColumn()).setValues(rng1Array);
}
}
,但是我希望能够选择每行只有一些元素。
这样做的最好方法是什么?我必须用这样的选择每个细胞挨个:
sheet1.getRange(1, 1, sheet1.getLastRow(),sheet1.getLastColumn()).getValues()[x][x])
换句话说,如果我有以下数据集:
Data1 Data2 Data3 Data4 Data5 Data6
是什么,只选择最好的方法例如Data2,Data4和Data6?
如果这里需要的是完整的脚本:
function Copy_data() {
var sheet1 = SpreadsheetApp.openById("ID").getSheetByName("Sheet1");
var sheet2 = SpreadsheetApp.openById("ID").getSheetByName("Sheet2");
var date1 = sheet1.getRange(1, 1, sheet1.getLastRow()).getValues();
var date2 = sheet2.getRange(1, 1, sheet2.getLastRow()).getValues();
for (var i = date2.length; i < date1.length; i++){
var rng1Array = sheet1.getRange(i+1,1,1,sheet1.getLastColumn()).getValues();
sheet2.getRange(i+1,1,1,sheet1.getLastColumn()).setValues(rng1Array);
}
}
我无法想出任何方式可以直接选择范围内的随机列或值。另一方面,我会建议你不要选择你想要的每一个值,选择整行并且在迭代器的帮助下忽略你不想要的值(比如for循环中的'i')。例如。如果我= 1忽略,如果我= 3,忽略等......如果你忽略的列在表中总是相同的,那么我会建议在另一个表中使用** importrange **并选择你想要的列在查询的帮助下,然后只读取该表作为输入。 –
您可以选择所有数据并隐藏不需要的列。 – Cooper