谷歌表格宏 - JS

时间:2021-01-28 18:55:49

标签: google-apps-script

我正在尝试获取包含此格式值的单元格的月份 (dd/mm/yyyy)

    var date = new Date(scadenziario.getRange(eRow,eCol).getValue());
    var month = date.getMonth();

我不知道为什么,但它不起作用。 包含日期的单元格在工作表中显示:20/05/2021 我希望月份变量与单元格的月份相匹配,在本例中为 5。

1 个答案:

答案 0 :(得分:0)

单元格中的日期不是日期对象。您可以验证是否运行 ISDATE:

enter image description here

解决您的问题的一种方法是使用 getDisplayValueslice 结果字符串的相关部分:

  const date = scadenziario.getRange(eRow,eCol).getDisplayValue();
  const month = date.slice(3,5).replace("0","");

最后但并非最不重要的一点是,您想要获得 5 而不是 05,因此一种方法是获得 05 并删除 0 部分。如果日期是 12,那么您将获得完整的数字 12