所以我基本上有这种类型的多个电子表格的设置:
A B C D E F G H I J K L M N O P Q R S
1 Lab1 Lab2 Lab3 Averages
2 FN LN Lb HW Pa Lb HW Pa Lb HW Pa Lb HW Pa Overall
3 ab cd 12 34 56 78 90 01 23 45 67 x y z xyz
4 ef gh 89 09 87 76 54 32 18 48 39 x y z xyz
5 ij kl 10 29 83 47 31 24 35 49 54 x y z xyz
6 Ave Av Av Av Av Av Av Av Av Av Av Av AV AveTot
前两列是“First”和“Last”名称。 “Lb”,“HW”,& “Pa”只是每个实验室的类别。 “x”,“y”,& “z”分别是类别的平均值。 “整体”“xyz”是类别平均值的加权和。 (x,y,& z)它们的重量不一定相同。即。它们可能是“总体”中“xyz”的25%,25%,50%或任何组合总计高达100%。
现在计算类别的平均值,我需要,例如名称“ab cd”,平均值为12,78,& 23得到“x”。 34,90和& 45为“y”。等
现在手动为x设置公式,我可以这样做:=AVERAGE(D2,G2,J2)
。
但是我遇到的问题,试图通过 Apps Script 来实现,只能连续选择范围而不是离散。 (我可能弄错了。)
另请注意,“实验室”可以或多或少。另一个方面是类别可以多于或少于显示的三个类别。
所以这是我的问题:如何在x,y和&的公式中编写脚本? z与“labs”&类别独立于电子表格到电子表格......?
答案 0 :(得分:0)
我想这个例子可以帮到你:
function test() {
var result = getCells("A3,C3");
Logger.log(result);
}
function getCells(cellsStr) {
var sheet = SpreadsheetApp.openByUrl("Spread Sheet URL")
var cellsArray = [];
var cells = cellsStr.split(",");
for(var index in cells) {
var row = sheet.getRange(cells[index]).getValue();
cellsArray.push(row);
}
return cellsArray;
};