2011-12-03 47 views
2

我有一個電子表格,我希望能夠使用函數來擴展列的數量,而不是使用自動填充,因爲新單元格正在滿足基於複雜公式和取決於許多事情的內容。 在其中一個單元格中,我希望內容類似於=SUM(A1:A8) 但是,如果我只是做cell.setValue("=SUM(A1:A8)"),我會得到「錯誤:未知範圍名稱A1」,除非我之後編輯單元格內容並按下回車鍵,但未真正更改其內容。將單元格的內容設置爲一個函數?

有沒有解決這個問題的方法? 我不希望計算在expand-columns-function中,因爲我確實希望在引用的單元格之一更改時更新單元格計算。 除了讓onEdit函數監聽引用單元格中的更改並更新計算之外,還有其他方法嗎?

感謝

+0

略相關(10個結果發現相同的標籤加 「自動填充」):http://stackoverflow.com/questions/16859941/autofill-script-google-spreadsheet-script – cregox

回答

6

要設置在單元格的公式,你應該使用cell.setFormulasetValue

我不知道我完全理解你「擴展」的問題,但我認爲一個打開的範圍總和函數可能比apps-script更適合你。例如
=SUM(A:A)=SUM(A2:A)

+0

啊,當然。這真是愚蠢,我沒有想到這一點。 雖然我沒有完全得到你的第二感覺,哈哈。 我的意思是基本上每當我使用這個擴展集時,我想添加更多的列,然後自動填充它們。不過,我不認爲正常的自動填充功能會這樣做,因爲我用基於複雜公式和條件的內容填充新單元格,另外我想指定列的寬度和其他內容。因此,我使用腳本函數來添加新列並填充它們的單元格。 – Clox

+0

我想我現在明白了。那麼,使用應用程序腳本似乎是正確的事情來滿足您的要求。由於setFormula解決了計算問題onEdit沒有必要了,對吧?如果是這樣,還有什麼可以回答的嗎?我應該刪除我的第二句話,你會接受答案嗎? –

+0

對,對不起。只是等待一個答案,因爲我很好奇是否有更好的方式去做一些我不知道的事情或類似的東西。 無論如何,我已經接受並upvoted =) 謝謝! – Clox

相關問題