我們經常在進行數據處理的時候,經常會遇到阿拉伯數字與中文數字之間的轉換,尤其遇到“錢”的問題時。而EXCEL提供的設置單元格格式,根本滿足不了這種需求。
今天跟大家利用NUMBERSTRING和TEXT函數實現數字在阿拉伯與中文格式之間的轉變。

以第一個公式:
“{=MAX((TEXT(ROW($1:$99999),”[dbnum1]”)=A2)*ROW($1:$99999))}”為例,來述實現方法。
本公式:
第一步計算ROW($1:$99999),此步的結果是返回1~99999之間的整數;因為本示例要轉換的數字有五位,所以,用1~99999,如果有三位,可以用1~999,有六位,需要用1~999999;
第二步計算TEXT(ROW($1:$99999),”[dbnum1]”),將1~99999之間的整數轉換為“一萬二千三百四十五”格式的中文數字;
第三步計算TEXT(ROW($1:$99999),”[dbnum1]”)=A2,將1~99999之間格式為“一萬二千三百四十五”的中文數字與A2單元格的中文數字比較,如果相等,返回TRUE,如果不相等,返回FALSE。所以,此步返回的是由一個TRUE和99998個FALSE組成的數組;
第四部計算(TEXT(ROW($1:$99999),”[dbnum1]”)=A2)*ROW($1:$99999),由一個TRUE和99998個FALSE組成的數組,分別與對應的1~99999相乘,TRUE相當于1,FALSE相當于0,所以,此步的結果是返回1個阿拉伯數字與99998個0組成的數組,而該阿拉伯數字,就是與A2單元格相對應的數字;
最后一步計算{=MAX((TEXT(ROW($1:$99999),”[dbnum1]”)=A2)*ROW($1:$99999))},在1個阿拉伯數字與99998個0組成的數組中取最大值,也就是與A2單元格相對應的數字;
因為是數組計算,所以,以結束公式輸入。
又因為數組中的數據有99999個,所以公式運行稍有點慢。






