2016-06-30 40 views
3

我有一個索引/匹配公式匹配特定文件基於某些單元格的日期值。這裏是公式:強制谷歌表單公式重新計算

=IFERROR(INDEX(INDIRECT("'"&TEXT($O$3,"mm-dd-yyyy")&"'!"&"$D3:$D$500"),MATCH($D5,INDIRECT("'" & TEXT($O$3, "mm-dd-yyyy") &"'!$B$3:$B500"),0)),0) 

我注意到,即使我導入新的CSV,值也沒有改變。只有這樣我才能更新數值,實際上是重新輸入公式,方法是從頂部拖動到最後一個單元格,就像手動操作一樣。

我試着改變設置下的重新計算時間,但它似乎是設置不適用於我的公式,因爲我將它設置爲每分鐘都沒有發生。

我想寫一個腳本讓它重新輸入公式並將其設置爲每天運行,但我希望有一個更簡單的方法來做到這一點。

回答

2

我發現了一個簡單的解決方案,我的問題。我寫了一個腳本,基本上將正確的日期重新輸入到公式引用的單元格中,並更新了公式。

8

簡答回答

您的公式不會被重新計算,因爲它的參數不會改變。正如你自己已經想出的那樣,解決方案是重新將正確的參數輸入到公式引用的單元格中。

說明

  1. 電子表格是開放
  2. 函數參數的變化
  3. 那麼,今天,RAND和RANDBETWEEN是按照更新的功能,谷歌牀單公式重新計算電子表格設置,更改,更改和每分鐘,更改和每小時
  4. 重新計算外部數據函數以下的時間間隔:
    • IMPORTRANGE:30分鐘
    • IMPORTHTML,IMPORTFEED,IMPORTDATA,IMPORTXML:1小時
    • 個GoogleFinance:1分鐘

注意:某些功能和自定義函數沒有按」不允許確定性函數作爲參數。

參考
0

這裏的另一個解決方案中,儘管一個是計算昂貴的:通過範圍在計算中的功能加以考慮。這樣,只要傳遞範圍內的值發生變化或者範圍本身發生變化(例如在該範圍內插入一行),公式就會重新計算。

+0

示例:試試這個簡單的函數。 function testPassRange(calcRange){ return calcRange.length; } –