javascript - Google 表格 - 重新格式化表单提交日期
问题描述
问题
我有一个 Google 表单,可以正确地将数据记录到 Google 表格中。但是,登录到 Google Sheet 时的日期格式是DD/MM/YYYY。
期望的结果
每当提交新表单时将日期格式化为MM/DD/YYYY(因此每当创建新行时)。
到目前为止我所拥有的
记录日期的工作表格
可以在表单触发时运行脚本。到目前为止,我的应用程序脚本如下:
代码.gs
function respondToFormSubmit() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0];
// Format column I
var column = sheet.getRange("B:B");
// Set new date format on column I
column.setNumberFormat('mm/dd/yyyy');
};
我得到的当前错误
TypeError: Cannot call method "getSheets" of null.
我不确定为什么它null
作为当前脚本返回正确链接到 Google 表单。
在提交新表单时,如果 B 列的日期格式为MM/DD/YYYY,我怎样才能达到我想要的结果?
解决方案
这是答案:
我不确定为什么它返回 null 因为当前脚本正确链接到 Google 表单。
如果您的脚本链接到 Google 表单,则“getActiveSpreadsheet()”方法将不起作用。该脚本必须绑定到 Google 电子表格才能执行此方法。对于表单绑定脚本,请使用以下代码:
var ssId = form.getDestinationId();
var ss = SpreadsheetApp.openById(ssId);
此外,每次提交新表单条目时设置数字格式是多余的,您可以简单地选择整个 B:B 范围,转到格式 -> 数字 -> 自定义数字格式并输入 dd/mm/yyyy。每个新的表单提交都会被自动格式化。
推荐阅读
- perl - 在 Tree::DAGNode 模块中使用 Walkdown 方法的问题
- c++ - 如何检查调用了哪种类型的下标运算符,左值还是右值?
- javascript - 发送图像时的PHP cors问题
- python - 当两个值都是字符串时,为什么我的 df.replace 不起作用?无法比较类型 'ndarray(dtype=object)' 和 'str'
- angular-cli - 如何从外部原理图中调用 ng add
- python - 将绘图值保存到 .dat 文件
- php - php中的数据库查询失败
- ruby - Kotlin's With,用于红宝石
- python - 为什么 mpld3 条形图显示一个 python 文件的“版本”,而不是另一个?
- c# - 通过 html 敏捷包从 wiki 获取数据