為什麼這篇Google 試算表 變數鄉民發文收入到精華區:因為在Google 試算表 變數這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者Tessie (Tessie)看板Office標題[算表] 批次輸入變數至既定公式計算時間Tue...
軟體:
Google試算表
版本:
想請問,我在一個工作頁已經有很複雜的一套公式
這套公式需要輸入3個數值x,y,z,經過計算後跑出一個數值 A
輸入欄只有這三格,但因為公式中參照很複雜
我現在沒辦法把輸入格變成3整欄,讓他跑出一整欄的A
(一部分原因是這公式不是我寫的,而且不是只是計算式,
還涉及數值大小條件要參照表格取得值等等,中間參照來參照去非常多)
我現在想要的動作是
如何讓這個計算能批次進行?
我有一大堆x,y,z的資料,想要自動算出A
x1,y1,z1,A1
x2,y2,z2,A2
...
xn,yn,zn,An
在A1這一格,我沒辦法寫成 "= x1,y1,z1 丟進去所算出來的A"
把x1,y1,z1丟進去設計好的輸入欄這個動作我不知道怎麼進行
還是在公式的輸入欄有辦法一次輸入 x1:xn, y1:yn, z1:zn 然後跑出 A1:An?
但是原本的輸出欄A也只是一格,我不知道他會怎麼呈現
想請教高手了,感恩~
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.45.223.19 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Office/M.1644254332.A.6C8.html
我可以自行來study,感恩~~
※ 編輯: Tessie (114.45.223.19 臺灣), 02/08/2022 16:26:57
※ 編輯: Tessie (114.45.223.19 臺灣), 02/09/2022 11:08:41
摸索了一下,不知道GetRange以及setFormula裡面要怎麼用變數指定儲存格
例如GetRange('X2')是要寫成GetRange('X' & i)嗎?我這樣跑不動耶
還有setFormula('=X2')是改寫成setFormula('=X' & i)這樣? 一樣跑不動
程式先跑到setFormula時沒有錯誤訊息,但值不對(變成0)
然後跑到GetRange時出現錯誤訊息 Exception: Range not found
可能這問題太基本,我一時竟然google不到答案...
程式長這樣:
function myFunction() {
var spreadsheet = SpreadsheetApp.getActive();
for (var i = 1; i < 10; i++){
spreadsheet.getRange('AK4').activate();
spreadsheet.getCurrentCell().setFormula('=Q' & i);
spreadsheet.getRange('AL4').activate();
spreadsheet.getCurrentCell().setFormula('=S' & i);
spreadsheet.getRange('AM4').activate();
spreadsheet.getCurrentCell().setFormula('=U' & i);
spreadsheet.getRange('AG' & i).activate();
spreadsheet.getCurrentCell().setFormula('=AN4');
}
};
AK4, AL4, AM4 是固定的公式輸入格 (原文中的x,y,z),然後AN4是固定的輸出格(原文A)
我要從 Qn, Sn, Un 這幾列挖數值去AK4,AL4,AM4去計算,然後結果要丟回去成AGn列
(i<10只是測試用,請忽略,只有這幾筆我就不用頭痛了XD)
麻煩幫忙解惑了,感恩
※ 編輯: Tessie (114.45.223.19 臺灣), 02/09/2022 15:00:00