作者kisha024 (4545454554)
看板Office
標題[算表] 民國日期轉成西元日期
時間Mon Feb 13 11:29:00 2017
軟體:excel
版本:2013
大家好 我想把民國日期轉成西元日期
民國日期格式可能如下
8/5/7
78/01/12
100/1/04
年的部分 可能有1位數,2位數,3位數
月日部分 不足10的部分 可能補0或不補0
本有想過用MID 但日期位數不確定 此法好像也不行
也試過TEXT 但年的部分是1位數或3位數 會有問題
想請問大家 有什麼好方法嗎?
謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.127.81.14
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Office/M.1486956542.A.383.html
1F:→ soyoso: 資料剖析→分隔符號→日期EMD 02/13 11:40
3F:→ soyoso: 再於儲存格格式內調整為西元日期 02/13 11:44
4F:→ soyoso: 資料剖析也可以分隔符號/後,年的欄位+1911,再以函數date 02/13 11:51
5F:→ soyoso: 或連結符號&來轉為西元日期 02/13 11:52
謝謝 原來資料剖析是這樣用的啊
我另有個疑問是 我知道儲存格內容如果是以=開頭的話表示函數
那等號後面兩個-符號是什麼意思呢?
譬如: =--LEFT(..略..)
8F:→ soyoso: 負負得正,讓文字型數字再運算後改為數字型 02/15 11:46
改為數字型是指 會把儲存格的 數值的類別變成'數值' 嗎?
我有測了一下
http://imgur.com/a/aUp93
我先把A1,B1的數值的類別選為'文字' A1,B1的值都是10
然後C1不更改(所以是通用格式)
C1的值輸入 =--(A1+B1) 按enter 結果是20沒錯
但此時C1的數值的類別變成了'文字' 而非原本的通用格式 也不是數值
如果此時我在C1上按F2 再按enter C1的值就真的變成了 =--(A1+B1) 而非20
如果一開始A1,B1的數值的類別是'通用格式' 就不會有這問題
所以也不用特別在=後面加--
所以我的問題是 通常--使用的時機是在什麼情況呢?
※ 編輯: kisha024 (140.127.81.14), 02/15/2017 14:41:36
9F:→ soyoso: 儲存格格式的類別是文字,並不一定資料類型就是文字 02/15 15:38
10F:→ soyoso: 這方面以函數type測試就可清楚 02/15 15:38
12F:→ soyoso: 為文字的數字,函數type回傳2,sum加總時為0 02/15 15:46
13F:→ soyoso: 但於運算下如=a2+b2會以數字類型相加而回傳3(如儲存格e2) 02/15 15:49
14F:→ soyoso: 但範圍加大,如a1:a100的加總時,則可以儲存格E2的方式 02/15 15:50
15F:→ soyoso: 將文字類型的數字於運算--下改為數字類型 02/15 15:51
16F:→ soyoso: 另有以left、mid、right所取字串(有符合日期格式)要改為日 02/15 15:53
17F:→ soyoso: 期序列值 02/15 15:53
18F:→ soyoso: 還有substitute、replace取代後(不帶非數字字元)時可使用 02/15 16:02
19F:→ soyoso: 還有text;如不以--的話也可以*1的方式 02/15 16:11
20F:→ kisha024: 非常感謝s大 除了原問題解答 還多了一堆意外的收穫 02/17 14:57
21F:→ soyoso: 如有支援儲存格格式emd中華民國年的話,另可用datevalue 04/18 18:38