2015-04-03 119 views
1

因此,假設我有一個帶有隨機工作表名稱,「Bob」,「Sally」,「Billy」,「John」或類似的非順序工作表的表格工作簿。我還有另一張名爲「總計」的表。我怎樣才能總結一個特定單元格的值,比如來自所有單元格的「H4」?特別是如果我在創建公式之後添加新工作表而不必每次更改公式?Google表格工作簿中所有工作表的總和值

回答

3

您可能想使用自定義函數。這增加了scripteditor

function sumCellAS(cell) { 
var val = []; 
SpreadsheetApp.getActive() 
    .getSheets() 
    .forEach(function (s) { 
     val.push(Number(s.getRange(cell) 
      .getValue())) 
    }); 
return val.reduce(function (x, y) { 
    return x + y; 
    }); 
} 

然後在電子表格中輸入公式= sumCellAS(「H2」),通過在細胞內進行彙總,作爲一個字符串。

+0

所以幾個問題與您的特定解決方案: 1)因爲我傳遞「H2」,而不是H2,我不能複製和過去,如果我想要做的說的50個細胞像這樣連續 2)如果我在使用公式後在一張紙上更新了一個值,如果我例如更改了「bob」表下的值,它不會更新「總計」表中的值。 – user1416564 2015-04-03 11:50:06

+0

如果你想要做50個單元格,你需要傳遞這個範圍,但是這個代碼需要做一些修改。更新問題是自定義公式的常見問題:它們遭受所謂的「備忘錄」。有一種方法可以「重新執行」重新計算。有關詳情:http://stackoverflow.com/questions/9022984/google-apps-script-to-summarise-data-not-updating/9023954#9023954 – JPV 2015-04-03 16:16:49

相關問題