Javascript 范围值总和

Javascript 范围值总和,javascript,google-docs,Javascript,Google Docs,我试图对范围内的值求和,但由于某种原因,它不能求和。知道为什么吗? 我不是一个很好的JavaScript,但我有一些知识 function bag(input) { var sheet = SpreadsheetApp.getActiveSpreadsheet() var AllValues = sheet.getRange(input).getValues(); var FValue = ""; var TotalGold = 0; var TotalS

我试图对范围内的值求和,但由于某种原因,它不能求和。知道为什么吗? 我不是一个很好的JavaScript,但我有一些知识

function bag(input) {
    var sheet = SpreadsheetApp.getActiveSpreadsheet()
    var AllValues = sheet.getRange(input).getValues();
    var FValue = "";
    var TotalGold = 0;
    var TotalSilver = 0;
    var TotalBronze = 0;
    for(i = 0; i < AllValues.length; i++) {
        var total = AllValues[i][0].split(" ");

        for(i = 0; i < total.length; i++){
            if (total[i].indexOf("g") >= 0) {
                var value = total[i].replace("g","");
                var gold = value * 1;
                TotalGold = TotalGold + gold;
            }
            else if (total[i].indexOf("s") >= 0) {
                var value = total[i].replace("s","");
                var silver = value * 1;
                TotalSilver = TotalSilver + silver;
            }
            else if (total[i].indexOf("b") >= 0) {
                var value = total[i].replace("b","");
                var bronze = value * 1;
                TotalBronze = TotalBronze + bronze;
            }
            else {
                return null;
            }
        }
    }
    return TotalGold + "g " + TotalSilver + "s " + TotalBronze + "b";
}
功能袋(输入){
var sheet=SpreadsheetApp.getActiveSpreadsheet()
var AllValues=sheet.getRange(输入).getValues();
var FValue=“”;
var TotalGold=0;
var=0;
var=0;
对于(i=0;i=0){
var值=总计[i]。替换为(“g”,”;
var gold=价值*1;
总黄金=总黄金+黄金;
}
如果(总计[i].indexOf(“s”)>=0){
var值=总计[i]。替换为(“s”,替换为“);
var银=值*1;
总银=总银+银;
}
else if(总计[i].indexOf(“b”)>=0){
var值=总计[i]。替换为(“b”和“);
var青铜=值*1;
TotalBronze=TotalBronze+青铜;
}
否则{
返回null;
}
}
}
返回TotalGold+“g”+TotalSilver+“s”+TotalBrown+“b”;
}

看来您正在嵌套迭代中覆盖
i
的值。选择另一个标识符。例如:
for(var j=0;j

谢谢,它现在正在工作。我还得取消else事件,因为如果射程上有任何empety单元,它将返回empety。顺便问一下,在公式中,我需要使用=袋子(“c5:c8”),例如,我如何才能使“不需要”在公式中只是=袋子(c5:c8)…谢谢