引用:
作者: leowang
有沒有好方法可以用函式將日期時間轉換成下圖的那樣
"將B儲存格轉換成C儲存格那樣"
|
原始的來源格式,似乎是 NOW() 的函數
因此假設
A1 儲存格為 =NOW()
B1 儲存格為 =MONTH(A1)&DAY(A1)&CHAR(10)&HOUR(A1)&MINUTE(A1)
並且將 B1 儲存格的「儲存格格式」中的自動換行勾選起來,應該就可以做到如上所示的
效果 ...
當然若是將兩者的公式合併的話就是
=MONTH(NOW())&DAY(NOW())&CHAR(10)&HOUR(NOW())&MINUTE(NOW())
Excel 函數解說
Now 取得系統目前的時間,只要重新開檔、重新入 =NOW() 的儲存格,內容就會被更新
MONTH 取得日期格式中「月的部份」1~12。
DAY 取得日期格式中「日的部份」1~31。
HOUR 取得時間格式中「小時的部份」0~12 或 0~23。
MINUTE 取得時間格式中「分鐘的部份」0~59。
CHAR(10) 取得換行符號,在儲存格有自動換行下,當有換行符號時,在該符號位置會換行。
--------------------------------------------------------------------------
如果這是純文字的格式的話,如
A3 儲存格為 '2012/12/21 07:33:00 PM
B3 儲存格為 =REPLACE(MID(A3,6,FIND(" ",MID(A3,6,6))),FIND("/",MID(A3,6,5)),1,"")&CHAR(10)&REPLACE(LEFT(RIGHT(A3,13),5),FIND(":",RIGHT(A3,13)),1,"")
並且將 B2 儲存格的「儲存格格式」中的自動換行勾選起來,應該就可以做到如上所示的
效果 ...
Excel 函數解說
REPLACE 取代指定位置的字元或字串。
RIGHT 從右方開始取得指定字數的字元或字串。
LEFT 從左方開始取得指定字數的字元或字串。
MID 從指定從左方第幾位起開始取得指定字數的字元或字串。
FIND 從指定從左方第幾位起開始找尋指定字元或字串,並回傳在字串中的位置編號(Index)。
CHAR(10) 取得換行符號,在儲存格有自動換行下,當有換行符號時,在該符號位置會換行。
不然就要使用 VBA 來作格式轉換了 ...