close

A1=123456789

=NUMBERSTRING(A1,1) 數字轉國字 一億二千三百四十五萬六千七百八十九

=NUMBERSTRING(A1,2) 數字轉大寫國字 壹億貳仟參佰肆拾伍萬陸仟柒佰捌拾玖

=NUMBERSTRING(A1,3) 數字轉小寫國字 一二三四五六七八九

 

 

Excel 兩個未公開的函數 NUMBERSTRING() DATEDIF()

函數:NUMBERSTRING


說明:NUMBERSTRING是將正整數轉成大寫的函數,該函數被MS隱藏。

函數原型為=NUMBERSTRING(value,type),不同的type參數類型返回值的格式是不一樣的,

有點類似於=TEXT(value,type),TEXT()用法請參閱 Excel漢字轉阿拉伯數字(1)底部。

NUMBERSTRING示例:

公式 結果

=NUMBERSTRING(1234567890,1)
一十二億三千四百五十六萬七千八百九十
=NumberString(1234567890,2) 壹拾貳億三仟肆佰伍拾陸萬柒仟捌佰玖拾
=NumberString(1234567890,3) 一二三四五六七八九

利用參數2,我們就可以用來完成人民幣小寫轉化為大寫,下面的應用實例中會講到。

 

--------------------------------------------------------
函數:DATEDIF


說明:此函數計算兩日期間的,亦為MS隱藏函數。

函數原型為=DATEDIF(start_date,end_date,unit)

Start_date 為一個日期,它代表時間段內的第一個日期或起始日期。日期有多種輸入方法:帶引號的文本串(例如 "2001/1/30")、系列數(例如,如果使用 1900 日期系統則 36921 代表 2001 年 1 月 30 日)或其他公式或函數的結果(例如,DATEVALUE("2001/1/30"))。

End_date 為一個日期,它代表時間段內的最後一個日期或結束日期。

Unit 為所需資訊的返回類型。
"Y" 時間段中的整年數。
"M" 時間段中的整月數。
"D" 時間段中的天數。
"MD" start_date 與 end_date 日期中天數的差。忽略日期中的月和年。
"YM" start_date 與 end_date 日期中月數的差。忽略日期中的日和年。
"YD" start_date 與 end_date 日期中天數的差。忽略日期中的年。

DATEDIF示例:

公式 結果
=DATEDIF("2000-1-1","2010-7-8","y") 10
=DATEDIF("2000-1-1","2010-7-8","m") 126
=DATEDIF("2000-1-1","2010-7-8","d") 3841
=DATEDIF("2000-1-1","2010-7-8","md") 7
=DATEDIF("2000-1-1","2010-7-8","ym") 6
=DATEDIF("2000-1-1","2010-7-8","yd") 189

利用此函數可以方便的計算兩時間之間的年差、月差、天差……

 

----------MS 未公開函數應用----------

公式實現人民幣小寫轉大寫(A2=2010.07)

Value Formula1 Formula2
2010.07 貳仟零壹拾元零角柒分 貳仟零壹拾元零角柒分
2010.7 貳仟零壹拾元柒角 貳仟零壹拾元柒角
2010.07 貳仟零壹拾元零角柒分 貳仟零壹拾元零角柒分
2010.0708 貳仟零壹拾元零角柒分 貳仟零壹拾元零角柒分

 

Formula1=IF(ISERROR(FIND(".",A2)),NUMBERSTRING(INT(A2),2)&"元整",IF(ISERROR(NUMBERSTRING(MID(A2,FIND(".",A2)+2,1),2)),NUMBERSTRING(INT(A2),2)&"元"&NUMBERSTRING(MID(A2,FIND(".",A2)+1,1),2)&"角",NUMBERSTRING(INT(A2),2)&"元"&NUMBERSTRING(MID(A2,FIND(".",A2)+1,1),2)&"角"&NUMBERSTRING(MID(A2,FIND(".",A2)+2,1),2)&"分"))


Formula2=IF(MOD(A2,1)=0,NUMBERSTRING(A2,2)&"元整",IF(ISERROR(NUMBERSTRING(MID(A2,FIND(".",A2)+2,1),2)),NUMBERSTRING(INT(A2),2)&"元"&NUMBERSTRING(MID(MOD(A2,1),3,1),2)&"角",NUMBERSTRING(INT(A2),2)&"元"&NUMBERSTRING(MID(MOD(A2,2),3,1),2)&"角"&NUMBERSTRING(MID(ROUND(MOD(A2,1),3),4,1),2)&"分"))

arrow
arrow
    全站熱搜

    jsy247 發表在 痞客邦 留言(0) 人氣()