進階:從另一個試算表取得選項
您的選項試算表是外掛程式唯一會讀取的地方:您在 A 欄輸入選項、在 B 欄輸入名額,外掛程式則把報名數寫進 C 欄。您雲端硬碟中的其他東西都不會被碰到。
如果您想用的清單已經在另一個試算表裡(名單、庫存清單,或某位同事在維護的試算表),您不必重打或複製一份。用公式把 A 欄指向那份試算表,您的表單就會跟著它走。
這個公式
開啟您的選項試算表,點擊該問題工作表的 A2 儲存格,然後輸入:
=IMPORTRANGE("https://docs.google.com/spreadsheets/d/YOUR_SHEET_ID/edit", "Sheet1!A2:A")
請把網址換成您來源試算表的網址,並把 Sheet1!A2:A 換成放著選項的工作表與欄位。如果來源有標題列,請讓範圍從第 2 列開始。
第一次這樣做時,儲存格會顯示 #REF! 以及一個 允許存取 的提示。點一次之後值就會出現。這個提示只會顯示給同時能開啟兩份試算表的人。
請把 A1 維持為 Options。外掛程式會用這個標題確認工作表版面完好,一旦它改變,同步就會停止。
接下來會怎樣
其他都不會改變。您的表單仍照平常的排程同步(側邊欄開啟時、每小時,以及每次回覆之後),而每一次同步都會讀取該公式當下算出的結果。修改來源試算表,新的值會在下一次同步時抵達您的表單。
名額需要多看一眼
B 欄的名額是依 列 與選項配對的:B5 中的數字管的是 A5 上的那個選項。
手動輸入的清單不會移動,所以平常使用時完全看不出這一點。但由公式供給的清單會移動:如果來源中有列被插入、刪除或重新排序,選項會位移,而您的名額會留在原地,貼到錯的列上。
有兩種保持安全的做法:
- 在來源清單的 結尾 新增或刪除列,而不要在中間動
- 每次重新排序之後,開啟選項試算表,確認每個名額仍然在正確的選項旁邊
如果您完全不使用名額,以上都與您無關。
公式壞掉時
如果存取權被收回、來源檔案被刪除,或範圍變得無效,該儲存格會算出 #REF! 或 #N/A 之類的錯誤。
外掛程式 不會 把它寫進您的表單。同步會停止,該問題會保留它已有的選項,側邊欄則會顯示一則同步錯誤,請您修正選項試算表。請開啟試算表、修好公式,然後再同步一次。
為什麼是公式而不是檔案選擇器
從外掛程式內部連到外部試算表,等於要授予它那些檔案的存取權;而且這會讓選項試算表因為一個您看著它時看不到的設定,而有兩種不同的意義。用公式,就能讓一條規則始終成立:Options 和 Capacity 是您的,Taken 是外掛程式的,而且外掛程式除了它為您的表單建立的那一份之外,絕不會讀取任何試算表。
