我對使用Google文檔相當陌生,但我非常欣賞它。腳本很容易完成簡單的任務,但我已經意識到潛在的速度問題,這有點令人沮喪。谷歌電子表格通過腳本關閉自動保存?
我有一張用於我的業務的工作表,用於計算工地上某些材料的成本。它工作的很好,但是在工作之間清理有點繁瑣,所以我寫了一個簡單的腳本來清除我需要清空的範圍(由我定義並由名稱引用)。
再一次,工作得很好。唯一的問題是清除幾個範圍(七)最終需要十秒左右。我相信 - 這是因爲電子表格在每個範圍被清除後都會被保存,這會變得非常耗時。
我想要做的是通過在腳本中禁用自動保存來測試該理論,然後在範圍被清除後重新啓用它。我不知道這是否可能,因爲我沒有看到API中的函數來做到這一點,但如果是這樣,我很想知道它。
編輯:這是我使用的功能,因爲它代表。我已經嘗試過多次重寫它,以便更簡潔,更少的API調用密集型,但到目前爲止,我還沒有任何運氣來減少處理呼叫所需的時間。
function clearSheet() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
sheet.getRange("client").clear();
sheet.getRange("lm_group_1").clear({contentsOnly:true});
sheet.getRange("lm_group_2").clear({contentsOnly:true});
sheet.getRange("dr_group_1").clear({contentsOnly:true});
sheet.getRange("dr_group_2").clear({contentsOnly:true});
sheet.getRange("fr_group_1").clear({contentsOnly:true});
sheet.getRange("fr_group_2").clear({contentsOnly:true});
sheet.getRange("gr_group_1").clear({contentsOnly:true});
sheet.getRange("client_name").activate();
}
我已將當前腳本添加到原始帖子。我認爲它現在就是這樣(API調用太多),並且可能會重寫它,使其更加優雅一些,但這是一種正在進行的工作。 –