我是谷歌脚本的新手。我想从电子表格单元格中为变量赋值,并且在进行算术运算后,想要将其分配给电子表格中的特定单元格。
我正在使用以下代码:
function myFunction() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sh = ss.getSheetByName("PATTERNS");
var dd = sh.getRange("C4").getValue();
var ee = sh.getRange("D4").getValue();
var x = dd - ee;
sh.getRange("P4").setValue(x);
}
但是,单元格P4的值显示错误:#NUM!
请帮忙!
我也想用于循环用于单元格no
for (var i = 1, i <60, i++)
{
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sh = ss.getSheetByName("PATTERNS");
var dd = sh.getRange("C[i]").getValue();
var ee = sh.getRange("D[i]").getValue();
var x = dd - ee;
sh.getRange("P[i]").setValue(x);
}
如何获得这个?有人可以帮助我吗?
答案 0 :(得分:0)
试试这个:
function myFunction() {
var ss=SpreadsheetApp.getActiveSpreadsheet();
var sh=ss.getSheetByName("PATTERNS");
var rg=sh.getDataRange();
var vA=rg.getValues();
var change=false;
for(var i=0;i<vA.length;i++)
{
if(!isNan(vA[i][2]) && !isNan(vA[i][3]))
{
vA[i][15]=vA[i][2]-vA[i][3];
change=true;
}
}
if(change)
{
rg.setValues(vA);
}
}
答案 1 :(得分:0)
试试此代码
function myFunction() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sh = ss.getSheetByName("PATTERNS");
var dd = sh.getRange("C4").getValue();
var ee = sh.getRange("D4").getValue();
var x = parseInt(dd) - parseInt(ee);
sh.getRange("P4").setValue(x);
}