[英]Convert text date/time to as date time format in excel
數據是從應用程序中提取的。 數據/時間的文本表示為
“2022 年 11 月 30 日星期三 09:30:00 GMT+0530(印度標准時間)” (文本)
我需要將此列格式化為 MS 數據/時間類型,而不是文本
試過自定義格式..但沒有用。 無法教授“Wed”和“GMT...”部分
試圖將單詞打斷為=MID(A1,5,20)
[它給出“2022 年 11 月 30 日 09:30:00”]
然后申請。 =TIMEVALUE(TEXT(RIGHT(B1,8),"HH:MM:SS"))
它有效,excel 能夠以時間格式理解它,如9:30:00 AM
但是,當我類似地應用日期格式時=DATEVALUE(TEXT(LEFT(B1,11),"mmm dd yyyy"))
它給出了一個值錯誤,不知道下一步該怎么做
有沒有辦法在一個 go 中做到這一點? 整個列可以格式化為有效的日期和時間。
我的靈感來自:[問題]: 將文本日期/時間轉換為 excel 中的真實日期時間[博客]: https://support.microsoft.com/en-us/office/format-numbers-as-dates-or -times-418bd3fe-0577-47c8-8caa-b4d30c528309
好心提醒
有很多方法可以做到這一點,也許目前我已經嘗試過這個,
• 單元格B1
中使用的公式
=LET(_string,TEXTSPLIT(MID(A1,5,20),," "),
_date,DATE(INDEX(_string,3),MONTH(INDEX(_string,1)&1),INDEX(_string,2)),
_time,TIMEVALUE(INDEX(_string,4)),
_date+_time)
其它的辦法,
• 單元格C1
中使用的公式
=DATEVALUE(SUBSTITUTE(LEFT(MID(A1,5,20),11)," ",", ",2))+RIGHT(MID(A1,5,20),8)+0
DATEVALUE()
實際上不需要換行,
• 單元格C1
中使用的公式
=SUBSTITUTE(LEFT(MID(A1,5,20),11)," ",", ",2)+RIGHT(MID(A1,5,20),8)
使用LET()
使其更具可讀性,
• 單元格C1
中使用的公式
=LET(_extract,MID(A1,5,20),
_datepart,LEFT(_extract,11),
_timepart,RIGHT(_extract,8),
SUBSTITUTE(_datepart," ",", ",2)+RIGHT(_timepart,8)+0)
一種更巧妙的方法是使用TEXTBEFORE()
和TEXTAFTER()
• 單元格D1
中使用的公式
=SUBSTITUTE(TEXTBEFORE(TEXTAFTER(A1," ")," GMT")," ",", ",2)
注意:由於在 Excel 中,日期和時間存儲為數字,這將以數字形式返回,日期序列號的 integer 部分代表日期,小數部分是時間,因此請根據您的需要或區域設置相應地格式化.
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.