十年網(wǎng)站開發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營維護(hù)+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
問題
簡單說一下吧。編程時有些問題看起來很簡單,但想與做往往就是兩回事。計(jì)算機(jī)編程正是具有這個特點(diǎn)。
目前在修改基于BeX5 3.6的報表格式。使用的自然是report組件,切換到報表設(shè)計(jì)狀態(tài)后,使用EXCEL的常規(guī)設(shè)置方式格式——帶千分位和人民幣符號,去掉小數(shù)問題,感覺是沒有問題的。但是,先后使用了貨幣格式,數(shù)字格式,會計(jì)專用等格式,運(yùn)行結(jié)果都是不變;即都是默認(rèn)的帶有兩位小數(shù),且顯示形式是一長串?dāng)?shù)字,閱讀起來相當(dāng)難看。
在官方論壇看搜索,根本不存在相應(yīng)的問答——本來就很簡單的嘛!此問題花費(fèi)了僅一個小時——解決不了?。坑纱宋以俅蜗肫稹俺绦蛟场钡拿烂?.....
算了,先不管它了!把軟件新版本安裝到客戶回來,感覺舒了一口氣!閑時,又想起早晨那個問題。不覺得想起了EXCEL宏錄制問題——通過宏代碼當(dāng)然可以輕松觀察到數(shù)字的各種格式。接著,分析了一個report組件對應(yīng)的xml文件中那個格式部分對應(yīng)的代碼。估計(jì)外部EXCEL宏代碼格式可能與之通用。
試驗(yàn)
開始試驗(yàn)。在外部EXCEL得到的宏錄制代碼如下:
Range("A1:A7").Select
Selection.NumberFormatLocal = "¥#,##0;¥-#,##0"
把report組件對應(yīng)的內(nèi)容文件TradeNature.xml打開,觀察到如下:
嘗試修改成如下:
結(jié)果
成功!說實(shí)在話,盡管EXCEL教學(xué)10多年了,對于其復(fù)雜的數(shù)字格式,特別是后臺代碼格式,還沒有作細(xì)致分析。不知report組件本身存在BUG還是怎么的?是否反復(fù)修改了數(shù)字格式后其不會完全覆蓋?這樣的話,可以算是該組件的一個BUG了。接下來有空時再詳細(xì)試驗(yàn)分析一下吧。