為了在即將到來的冬季學期課程中實施一個練習,以減輕學生和我自己的負擔,我需要能夠在每個學生的檔案中添加給定單元格的值,并將該值發布到單獨的(類聚合)檔案中。
每個學生檔案本身將包含多個作業表,我需要聚合的一個單元格值可能位于頂部作業表上,另一個可能位于第三個作業表上。
我希望有人可以提供一個示例,說明如何在單獨的 Google Sheet 檔案中參考給定的單元格,這樣我就可以實作上述目標。一旦我撰寫了公式,我就假設,作為講師,我將成為所有檔案的所有者,聚合檔案將隨著學生檔案的更改而動態更新。
如果沒有這個功能,我將不得不限制學生可以做什么,只是為了讓我自己的任務更容易構建結果聚合。
下面的玩具示例假設 3 個學生,每個學生維護一個 2 個作業表的 Google Sheets 檔案,如
https://docs.google.com/spreadsheets/d/1pn9D6s382lvnsY-GoMr92aFGFmL_11N2g4tci0tWyzQ/edit?usp=sharing
https://docs.google.com/spreadsheets/d/1aqrGEJQUFg8cdpJwOaj7ZO64iOm9op0U4kXsBn72JMI/edit?usp=sharing
https://docs.google.com/spreadsheets/d/18ixwhnSVesDDfba2AvSN7v-TPiemGEtavkAlw9GS02c/edit?usp=sharing
我想將每個 Google Sheets 檔案中第一個作業表的第二列中的數字相加,以獲得“類聚合”檔案,如
https://docs.google.com/spreadsheets/d/18XnZ7ZaVGfxOTiaT11FH_t5s5RWQQevfZFWrUWb9gPM/edit?usp=sharing
無需手動復制、粘貼和添加(這是我在上面所做的)。鑒于學生維護的 Google 表格是網路鏈接(我將成為這些檔案的所有者以及我的講師),是否有一種簡單的方法來使用更長的路徑名并動態更新類聚合檔案。
我希望我已經解釋了我想要做什么。請讓我知道,如果你有任何問題。感謝您的時間和關注。
uj5u.com熱心網友回復:
在不了解有關電子表格的任何其他資訊的情況下如何:
function ttttttttt(obj) {
const ss = SpreadsheetApp.getActive();
ss.getSheets().forEach(sh => sh.getRange(obj.a1not).setValue(obj.value));
}
uj5u.com熱心網友回復:
上面的 Cooper 和 Tanaike 都提供了使用腳本撰寫的建議,我意識到這些答案比我從同事發送的 blog.google 鏈接中得到的答案要好得多。顯然,腳本提供了更大的靈活性,并且可以讓我做更多的事情。我的直接目標是看看是否可以在不使用手動復制和粘貼的情況下在我的聚合檔案中生成數字。
鏈接https://blog.google/products/g-suite/g-suite-pro-tips-how-sync-one-spreadsheet-another-google-sheets/教我如何參考作業表中的選項卡,以及然后我首先嘗試了函式 SUM。這似乎不適用于單獨的 Google Sheet 檔案。然后我嘗試了鏈接中示例中顯示的相同 Importrange 函式,并且確實有效。因此,我通過首先使用 IMPORTRANGE,然后在同一選項卡中使用 SUM 來完成我真正想做的事情,從而實作了我想要的。我通過將 Sheet_10 玩具檔案中的數字 10 更改為 12 來檢查它是否會動態更新。并且聚合也發生了變化。
我所做的顯示在https://docs.google.com/spreadsheets/d/18XnZ7ZaVGfxOTiaT11FH_t5s5RWQQevfZFWrUWb9gPM/edit#gid=0
鑒于我的冬季學期即將開始,而且我在編碼方面絕對不聰明,為了準備上課,我可能會采用不太優雅的解決方案。這個谷歌表格問題是在希望每個學生維護自己的投資組合的背景下出現的,但除了他們找到的其他資訊外,還要向他們展示總體表現。
Google Sheets 有 400 多個功能,但只有一些功能可以跨不同的檔案使用。SUM 沒有,IMPORTRANGE 有。我今天學到了很多。當我找到時間時,我將嘗試使用此處給出的腳本建議。感謝您的時間和幫助。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/381022.html
