谷歌Apps脚本:得到的范围内,编辑值和设定值范围
问题描述:
我想建立一个菜单功能编辑在谷歌表中选择的值:谷歌Apps脚本:得到的范围内,编辑值和设定值范围
function fDoSomethingWithRange(){
//var theSpreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var theSheet = SpreadsheetApp.getActiveSheet();
var theRange = theSheet.getActiveRange();
var theValues = theRange.getValues();
var theArray = new Array(theRange.getHeight());
//theSpreadsheet.toast(theValues);
for (var i = 0;i<theRange.getHeight();i++){
theArray[i]=new Array(theRange.getWidth());
};
for (var h=0;h<theRange.getHeight();h++){
for (var w=0;w<theRange.getWidth();w++){
var i = h + (w * theRange.getHeight());
theArray[h][w] = parseInt(theValues[i]) * 2; // just an example return double values
};
};
theRange.setValues(theArray);
};
我停顿在返回数组;第二列是空的,我只是不明白为什么。任何人?
感谢, 阿维德
答
好了,找到了自己......最后:-)
的GetValues()得到一个二维数组。我被显示一行值的吐司消息所愚弄,提示getValues()获取一维数组。
function fDoSomethingWithRange(){
//var theSpreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var theSheet = SpreadsheetApp.getActiveSheet();
var theRange = theSheet.getActiveRange();
var theValues = theRange.getValues();
var theArray = new Array(theRange.getHeight());
//theSpreadsheet.toast(theValues);
for (var i = 0;i<theRange.getHeight();i++){
theArray[i]=new Array(theRange.getWidth());
};
for (var h=0;h<theRange.getHeight();h++){
for (var w=0;w<theRange.getWidth();w++){
var i = h + (w * theRange.getHeight());
theArray[h][w] = parseInt(theValues[h][w]) * 2; // just an example return double values
};
};
theRange.setValues(theArray);
};