中if判斷中文 阿拉伯數字轉換成中文數字

2021-10-16 03:58:04 字數 1221 閱讀 9351

numberstring函式專門解決這個問題,使用規則如下:

圖 1 numberstring函式使用規則

1.純數字轉換:

圖 2 三種轉換形式示例

【說明】:

①由圖2示例可以看出, numberstring並不能識別負數。為了正常轉換,可以特殊處理:

圖 3 負數問題的處理

如圖3,單元格c7的公式為:

=if(a7<0,"負"&numberstring(abs(a7),1),numberstring(a7,1))

其執行邏輯是:

② numberstring會將小數點後數值四捨五入成正數,然後轉換:

圖 4 轉換時四捨五入處理

若不需要四捨五入,則要識別小數點後的小數,需要特殊處理:

=numberstring(int(a10),1)&"點"&numberstring(mod(a10,1)*100,3)

其執行邏輯是:

2. 轉換中文的同時,加上元角分

圖 5 阿拉伯數字轉繁體漢字且加圓角分

這是乙個標準的函式組合,直接用即可:

=if(a21=0,"",if(int(a21),text(trunc(a21),"[dbnum2]")&"元","")&if(mod(a21,1)=0,"整",if(trunc(a21,1),if(a21=trunc(a21,1),text(left(right(a21*100,2)),"[dbnum2]0角整"),text(right(a21*100,2),"[dbnum2]0"&if(left(right(a21*100,2))="0","","角")&"0分")),text(a21*100,"[dbnum2]0分"))))

英文數字轉換成為阿拉伯數字

include include include include includeusing namespace std define debug int parse void else if 1 twice check flag,do sth,clear flag else j 0 buf j c b...

羅馬數字轉換成阿拉伯數字

羅馬數字 採用七個羅馬字母作數字 即 1 v 5 x 10 l 50 c 100 d 500 m 1000 記數的方法 1 相同的數字連寫,所表示的數等於這些數字相加得到的數,如 3 2 小的數字在大的數字的右邊,所表示的數等於這些數字相加得到的數,如 8 12 3 小的數字 限於 x 和 c 在大...

羅馬數字轉換成阿拉伯數字

roman to integer example 1 input cccl ix output 389dict儲存單個羅馬字母代表的阿拉伯數字 初始狀態sum 0,迴圈遍歷字串,如果s i 所代表的阿拉伯數字大於s i 1 的,則加到sum上,如果小於,則sum減去s i 代表的阿拉伯數字 clas...