2017-08-15 54 views
0

我有一個基於導入的大量導入和公式的電子表格。有時需要很長時間才能更新 - 現在右上角有一個進度條,當您將鼠標懸停在上面時,會彈出消息「計算公式」。它有一種編程方式來檢測工作表何時重新計算?有沒有辦法確定電子表格完成計算的時間?

我想彈出一個框(烤麪包?),表示表單繁忙,然後在表單完成重新計算後消失。

回答

1

不是。 像Importrange這樣的易失性函數是電子表格穩定性的敵人。有時候他們會卡住重新計算,永遠不會完成;這是因爲創建副本通常會創建一個完成計算(最終)的版本。

如果使用許多基於它們的導入公式和公式,通常建議將導入公式替換爲通過腳本進行預定導入。

+0

是的,我有十幾個進口範圍報表工作。不太清楚如何通過腳本來安排導入。 –

+0

甚至無法編輯我的評論,:-(5秒不是很長,無論如何,使用range.copyTo作爲定時器上的事件設置的腳本? –

+0

您使用哪種方法取決於您是否想要整個工作表,它的數據或者只是一個範圍被複制,你下面概述的方法看起來很好,你可以把它包裝到一個函數中,所以你不需要每次都重新輸入所有的API調用,只需要調用它的源url,sheet,range和目標表 –

1

這似乎工作至今:後

 SourceWB = SpreadsheetApp.openByUrl("https://docs.google.com/spreadsheets/d/185XVLyN4fFLds8Z7JIgkL6mGl1CC82maBmmVAhYP71g/"); 
SourceRange = SourceWB.getRangeByName("CoreElementExport"); 
SouceValues = SourceRange.getValues(); 
var sourceRows = SourceRange.getNumRows(); 
var sourceColumns = SourceRange.getNumColumns(); 

DestWB = SpreadsheetApp.getActive(); 
DestSheet = DestWB.getSheetByName("TaxonomyImport"); 
DestSheet.getDataRange().offset(0, 0, sourceRows, sourceColumns).setValues(SouceValues); 

東西,只是想用這個非常複雜的輸入高科技...

相關問題