【发布时间】:2021-12-14 17:52:29
【问题描述】:
详情
在我的 Google 表格中,我有一列已格式化为 03:59 PM 格式。当我在其中插入时间时,数据会自动正确格式化为00:00 AM,但不是正确的日期,因为它说它是从 1899 年开始的。
当我首先插入数据并指定日期时,它会覆盖列00:00 AM 格式,而是插入MMM DD YYYY 00:00 格式,月份为文本,日期和年份为数字,没有上午或下午。当我再次使用03:59 PM 格式手动格式化单元格(或整列)时,它显示正确的时间格式并且具有正确的日期。
我目前正在通过带有 Gspread 模块的 Python 脚本添加数据。这使我可以使用指定的模式对其进行格式化。数据作为日期时间字符串添加到单元格中,然后更改单元格的格式,但紧接着该单元格再次被覆盖为hh:mm AM/PM 模式格式:{"numberFormat": {"type": "DATE_TIME", "pattern": "hh:mm AM/PM"}}。
因此,现在仅在手动输入数据时,它不会像 Python 脚本那样立即被覆盖。
问题
如何在不覆盖列的00:00 AM 格式的情况下将数据插入到具有日期时间属性(或至少包含日期和时间)的工作表中?
试过了:
- 格式化整列,然后输入数据
- 输入各种格式的数据,例如
12/12/2021 3:00 PM,它添加了 PM,但仍只覆盖时间格式。
【问题讨论】:
-
为什么不稍后输入和格式化?
-
因为我想每天自动在这张表中添加一个条目,而不是手动重新格式化。
-
您能解释一下
automatically的意思吗?如果输入来自 Python,onEdit将不起作用 -
刚刚编辑了原始问题,给出了更多细节。我对应用程序脚本不太熟悉,但 onEdit 可能会奏效。将不得不弄清楚如何只编辑手动数据,而不是重新格式化单个单元格两次。
标签: google-apps-script google-sheets google-sheets-formula