0

我正在谷歌电子表格中编写自定义函数。我的输入之一必须是日期,因为我使用的是date.getDate()

如果输入变量是例如一个字符串,我会得到一个#ERROR!在单元格上和单元格注释上的一般错误。

使用 try and catch 结构:

try {
  var DAYNUMBER = date.getDate();
} catch (e) {
  throw ("Function parameter 1 expects a date value the value entered is not in a date format.");
}

我能够更改评论上的错误消息,但最后它显示:

(line 44).

我还想将单元格值更改为:#VALUE!而不是#ERROR!信息。

我一直在寻找有关如何执行此操作的文档,但我一直找不到任何东西。

如果您可以指出有关如何避免(第 44 行)消息并将单元格值更改为 #VALUE 的文档或帮助!将不胜感激。

提前致谢。

4

1 回答 1

0

您可以使用 instanceof 命令检查变量是否为日期对象:

var DAYNUMBER = (date instanceof Date) ? date.getDate() : "#VALUE!";

一个?b : c 结构是 if a then b, else c 的快捷方式。

于 2015-08-13T10:11:44.253 回答