【发布时间】:2014-08-28 09:50:53
【问题描述】:
在我的 Google 电子表格(最新版本,截至 2014 年 8 月)中,我使用的是 =IMPORTRANGE(P5,"Tasks!b6:o7"),其中 P5 单元格包含另一个电子表格的密钥。另一个电子表格中的一个单元格包含我的自定义函数,有时需要时间来计算(有几十个单元格使用该函数)。问题是在第一个春天。该单元格的值未正确显示,而是显示#N/A 错误消息。
函数定义如下:
// global variable
var ONEDAY = 24*60*60*1000; // hours*minutes*seconds*milliseconds
function _mySimpleCalculateDaysDifference(DateToBeChecked)
{
var todaysDate = new Date();
var todaysDayModifier = todaysDate.getHours()<6?-1:0;
var daysDiff = (todaysDate.getTime() - DateToBeChecked.getTime())/ONEDAY;
return Math.floor(daysDiff) + todaysDayModifier;
}
它的调用方式如下:
=if((H18>0),(H18-F18),if((F18>0),_mySimpleCalculateDaysDifference(F18),""))
其中F 和H 列包含日期值。
有什么办法可以解决这个问题吗?
编辑:
我提到主电子表格是最新的 Google 电子表格,但那些被拉进来的都是“旧的”。
【问题讨论】:
-
看起来像这个问题:code.google.com/p/google-apps-script-issues/issues/… - 这个问题大约有 2.5 年的历史了。
-
就我而言,自定义函数在原始电子表格中运行良好。当它被部分导入另一个电子表格(使用
IMPORTRANGE)时,就会出现问题。我最近将“导入”电子表格迁移到新的谷歌电子表格中。之前还好。 -
我刚刚检查过,目前看起来还不错,所以这有点“喜怒无常”,可能取决于 Google 的可用处理能力资源(欧洲是星期一早上)?
-
是的,问题是喜怒无常。我认为值在缓存中排序大约 10 分钟,在关闭电子表格后大约 10 分钟,值看起来会被删除,你又开始得到 N/A。有时他们会在一秒钟内完成计算,有时可能需要几分钟,有时会重新计算失败。
-
这很有趣——我还有另一组这样的电子表格,它们都是“新”电子表格,而那些有问题的是“旧”电子表格。他们工作正常。我会检查它是否有助于使用较新的版本。
标签: google-apps-script google-sheets google-spreadsheet-api