我在表單的一列中有一堆ISO-8601格式的字符串。我怎樣才能讓Google表格將它們當作日期對待,以便我可以對它們進行數學運算(例如,兩個單元格之間的差異以分鐘爲單位)?我只嘗試=Date("2015-05-27T01:15:00.000Z")
但沒有喜悅。必須有一個簡單的方法來做到這一點。有什麼建議?ISO-8601 Google表格單元格中的字符串
回答
試試這個
=CONCATENATE(TEXT(INDEX(SPLIT(SUBSTITUTE(A1,"Z",""),"T"),1),"yyyy-mm-dd")," ",TEXT(INDEX(SPLIT(SUBSTITUTE(A1,"Z",""),"T"),2),"hh:mm:ss"))
凡A1可與ISO-8601格式的字符串或字符串本身的細胞。
爲了得到一個實際的日期值,你可以使用普通的數字格式格式化......
=DATEVALUE(MID(A1,1,10)) + TIMEVALUE(MID(A1,12,8))
如。
╔═══╦══════════════════════╦════════════════════╗
║ ║ A ║ B ║
╠═══╬══════════════════════╬════════════════════╣
║ 1 ║ 2016-02-22T05:03:21Z ║ 2/22/16 5:03:21 AM ║
╚═══╩══════════════════════╩════════════════════╝
- 假定時間戳是UTC
- 忽略毫秒(儘管你可以輕鬆添加足夠)
的DATEVALUE()
功能將格式化的日期字符串轉換爲值,TIMEVALUE()
不相同時間。在大多數電子表格中,日期&時間由一個數字表示,其中整數部分是1900年1月1日以來的天數,小數部分是時間作爲一天的一小部分。例如,2009年6月11日17:30約爲39975.72917。
上述公式分別解析日期部分和時間部分,然後將它們相加。
這個解決方案很好。這比接受的好。至少這會返回一個數值Date(Time)值,而不是一個字符串。我注意到,如果給出了時區偏移量,它就被忽略了。此外,字符串中字符位置的假設使得此解決方案較短並且可能比幾個替換和拆分函數調用更快。 –
你可以在最後加上tz。 ... +(10/24)其中10是偏移量 – Sam
我發現它更易於使用=SUM(SPLIT(A2,"TZ"))
格式yyyy-MM-dd HH:mm:ss.000
再次看到日期值作爲ISO-8601。
該解決方案並不錯。它根據請求返回一個數值Date(Time)值,而不是如接受的答案中的字符串。它最適用於GMT時間戳,而不是帶時區偏移量的時間戳。如果給出偏移量,則此解決方案使用「0」的時間。這個解決方案雖然不像[其他答案](/ a/36176351/543738)那樣正確,但卻比許多字符串函數調用要好。 –
- 1. 格式日期字符串爲ISO8601
- 2. jQuery隱藏表格單元格中的子字符串
- 3. excell單元格中的Html字符串
- 4. 查找單元格中的字符串
- 5. 單元格包含具有相對單元格引用的字符串Google表格
- 6. Google電子表格公式將字符串解析爲單元格
- 7. 從Google表格中的表中條件格式化單元格
- 8. 在單元格中搜索字符串
- 9. Java表格單元格的值設置爲字符串
- 10. 報告服務的單元格格式字符串/ Dundas圖表
- 11. 當且僅當表格單元格不爲空時,如何在表格單元格中追加字符串?
- 12. 比較Excel電子表格中單獨單元格中的字符串?
- 13. Google表格腳本 - 刪除表格中的選定單元格
- 14. 刪除單元格中的字符串中的特定字符
- 15. 基於Google工作表中的字符串返回多個單元格值
- 16. 將字符串傳遞給表格單元格視圖
- 17. 比較MigraDoc表格單元格與字符串
- 18. 表格單元格和字符串在同一行itext
- 19. 將單個單元格中的字符串劃分爲多個單元格
- 20. Google表格:字符串到列和行
- 21. 計算Google文件電子表格中列中任意值(字符串或數字)的單元格數量
- 22. Google電子表格單元格引用合併單元格
- 23. Google表格 - 用重複單元格替換= [單元格]
- 24. 字符串網格和單元格中的圖形
- 25. 如何使用表格中的單元格文本中的字符串
- 26. 在Google表格中管理Google受保護的單元格
- 27. 將ISO8601字符串轉換爲重新格式化的日期字符串(Swift)
- 28. Google表格跳轉到單元格
- 29. Google表格APIv4獲取空單元格
- 30. Google表格宏單元格顏色
嗯。這看起來不太「容易」,但我會給它一個旋風。我真的希望已經有一個功能可以做到。 –
此解決方案返回一個字符串,而不是@BobKuhar想要的日期類型。當我用ISO 8601時間字符串'2016-07-26T11:12:06.711-0400'測試時,結果爲'2016-07-26 11:12:06.711-0400'。作爲GMT時間字符串(不帶時區偏移量),「2016-07-26T11:12:06.711Z」變成了「2016-07-26 11:12:07」。該解決方案只是重新格式化ISO 8601字符串。 –
你必須拆分結果,將其分解爲「2016-07-26」和「11:12:07」。這兩個單元格將被格式化爲日期和時間。 –