谷歌Apps脚本在表单提交时间格式化的毛刺/修复(Google Apps Script on For

2019-08-22 20:00发布

背景:

如何:我怀疑这是谷歌表单(提交过程)/电子表格内的一个小故障,但可能是电子表格界面的日期转换工具的一部分(并且是预期的功能)。

当进入在谷歌表单文本框格式,有某种表单之间的通信错误的提交和回复电子表格,或窗体的数据进行预处理,然后发送到电子表格。 该故障似乎只在格式的文本字段中发生的数据##:## TEXT其中TEXT “”不包含 字符 。 例如: 4:15 pm将重现故障,但4:15 pm4:15 pm不会。

结果显示:在被放入电子表格(即一个单引号字符添加到字符串的开头'4:15 pm其中抛出了使用该时间数据的几个子系统我在的地方)。 这里有两个截图(对不起,在第二坏的大小):

我敢肯定,99%的故障是由造成##:组合。

临时的解决办法?:真正的问题是...我会如何去除烦人的撇号之前,我开始操作的时间数据? 我知道怎么的()细胞/范围的GetValue。 假设我有以下列方式的小区的值:

var value = myRange.getValue();
// value = '4:15 pm

我该如何去处理这个值到4:15 pm ? 一个简单的Java功能可

value = value.substring(1); // Assuming "value" is a String

但在谷歌应用程序脚本的电子表格 ,我不知道我该怎么做。

后脚本:这是必要的后处理这个数据,让我没有讲课大学教师在绕其形式输入正确的时间格式的语言部门。

在此先感谢那些谁可以帮助!

Answer 1:

我该如何去处理这个值到下午4:15? 一个简单的Java功能可

值= value.substring(1); //假设“值”是一个字符串,但在谷歌应用程序脚本的电子表格,我不知道我该怎么做。

谷歌Apps脚本使用JavaScript具有完全相同的方法。

value = value.substring(1);

应该返回所有除第一个字符。

更多关于JavaScript字符串在: http://www.w3schools.com/jsref/jsref_substring.asp



Answer 2:

如果删除了“在电子表格单元格的电子表格界面将这个条目的日期对象转换。

这可能(或不)是你,也许你应该当你再使用回读您的数据处理这个问题......当文字是不同的(例如用PM)它不会发生,只是因为在这种情况下, “是没有必要的电子表格以保持其作为一个字符串,因为电子表格不能将其转换为日期对象(时间值)。

人工智能有其不利的一面;-)


编辑:你不能这样做在onFormSubmit使用JavaScript触发功能substring()你提到。 如果你不熟悉,这里是要走的路:

要在执行特定的操作运行脚本:

  1. 打开或创建一个新的电子表格。
  2. 单击保存的电子表格对话框,并更改名称。
  3. 选择Tools>脚本编辑器,并写上你要运行的功能。
  4. 选择资源>当前项目的触发器。 你看面板没有触发设置消息。 点击这里,马上添加一个。
  5. 点击该链接。
  6. 在运行中,选择要由触发器执行的功能。
  7. 在活动中,选择来自电子。
  8. 从下一个下拉列表中,选择打开,在编辑或表单提交。
  9. 单击保存。

见文件在这里和这里



文章来源: Google Apps Script on Form Submit Time Formatting Glitch/Fix