• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      在Excel環(huán)境中運(yùn)用VBA實(shí)現(xiàn)中文大寫金額轉(zhuǎn)換

      2009-02-01 03:29:48顧士學(xué)
      關(guān)鍵詞:函數(shù)

      柳 佳 顧士學(xué)

      [摘 要]在Excel中運(yùn)用VBA實(shí)現(xiàn)了中文大寫金額轉(zhuǎn)換提高了工作效率

      [關(guān)鍵詞]VBA Excel 函數(shù)

      [中圖分類號(hào)]TD17[文獻(xiàn)標(biāo)識(shí)碼]A[文章編號(hào)]1007-9416(2009)12-0110-02

      在財(cái)會(huì)上很多情況下,需要從小到大寫金額的轉(zhuǎn)換,雖然我們通過設(shè)置Excel的單元格的特殊格式,可以將數(shù)字轉(zhuǎn)換為中文大寫數(shù)字。但這些方法有的不夠?qū)嵱?有的輸出格式不符合財(cái)會(huì)規(guī)定。下面我們提出在Excel環(huán)境中運(yùn)用VBA技術(shù)實(shí)現(xiàn)中文大寫金額轉(zhuǎn)換。

      1 環(huán)境選擇

      Excel 是微軟公司集成辦公軟件Office 中的一個(gè)組件,是用戶使用最為廣泛的軟件平臺(tái)之一。用其內(nèi)嵌的編程語言VBA進(jìn)行二次開發(fā)得到的應(yīng)用軟件,既可以使繁瑣、重復(fù)操作自動(dòng)化,提高工作效率和應(yīng)用水平,同時(shí)又不改變Excel原有的界面風(fēng)格、系統(tǒng)功能和操作方式,特別是它的編輯、排版、打印功能。用戶不必經(jīng)過特殊學(xué)習(xí)和培訓(xùn),即可使用,大大降低軟件的使用門檻,提高了軟件的可用性。

      2 VBA簡(jiǎn)介

      Visual Basic for Applications(簡(jiǎn)稱VBA)是新一代標(biāo)準(zhǔn)宏語言,它具有跨越多種Office 應(yīng)用軟件并且控制應(yīng)用軟件對(duì)象的能力。VBA提供了面向?qū)ο蟮某绦蛟O(shè)計(jì)方法,提供了比較完整的程序設(shè)計(jì)語言。Office就不僅僅是應(yīng)用程序,更是一個(gè)開發(fā)平臺(tái),可以利用VBA對(duì)Office 進(jìn)行二次開發(fā),擴(kuò)展其功能。

      VBA具有以下特征:

      2.1 VBA 是一種解釋性語言

      由于 VBA 是在VISUAL BASIC 的框架上建立起來的因此它也繼承了Visual Basic 作為一種解釋性語言的特性

      2.2 VBA 是一種面向?qū)ο蟮恼Z言

      作為新一代的高級(jí)語言VBA 提供了對(duì)面向?qū)ο蟮某绦蛟O(shè)計(jì)方法的支持實(shí)際上VBA 的工作過程就是對(duì)各種對(duì)象包括VISUAL BASIC對(duì)象和OFFICE對(duì)象進(jìn)行操作的過程

      2.3 VBA支持可視化的編程環(huán)境

      VBA 提供了新穎的可視化設(shè)計(jì)工具巧妙地將Windows 界面設(shè)計(jì)的復(fù)雜性封裝起來程序開發(fā)人員不必再為界面設(shè)計(jì)而編寫大量程序代碼僅需采用現(xiàn)有工具按設(shè)計(jì)者要求的布局在屏幕上畫出所需界面并為各圖形對(duì)象設(shè)置屬性即可。

      3 問題實(shí)現(xiàn)

      進(jìn)入VBA編輯環(huán)境,建立一個(gè)模塊,在模塊中定義一個(gè)名為ChangeLU的函數(shù),代碼如下:

      Function ChangeLU(XXJE As String)

      SL = "零壹貳叁肆伍陸柒捌玖"

      JE = "分角元拾佰仟萬拾佰仟億"

      M = Replace(Trim(XXJE), ".", "")

      N = Len(M)

      J = N: DXJE = ""

      For I = 1 To N

      W = Val(Mid(M, I, 1)) '

      If W > 0 Then

      DXJE = DXJE + Mid(SL,W +1, 1)

      DXJE = DXJE + Mid(JE, J, 1)

      ElseIf W = 0 Then

      If Mid(JE, J, 1) = "萬" Then

      DXJE = DXJE + Mid(JE, J, 1)

      ElseIf Mid(JE, J, 1) = "元" Then

      If Len(M) = 3 Then

      DXJE = DXJE + "零"

      End If

      DXJE = DXJE + "元"

      If Val(Mid(M, I + 1, 1)) > 0 And Len(M) > 3 Then

      DXJE = DXJE + Mid(SL, W + 1, 1)

      End If

      ElseIf Val(Mid(M, I + 1, 1)) > 0 Then

      DXJE = DXJE + Mid(SL, W + 1, 1)

      ElseIf Val(Mid(M, I)) = 0 Then

      If J >= 7 Then DXJE = DXJE + "萬"

      If J >= 3 Then DXJE = DXJE + "元"

      DXJE = DXJE + "整"

      Exit For

      End If

      End If

      J = J - 1

      Next

      ChangeLU = DXJE

      End Function

      注意:函數(shù)的調(diào)用參數(shù)小寫金額要求必須是文本型,而且一定要有兩位小數(shù)。

      4 函數(shù)的應(yīng)用

      函數(shù)在Excel應(yīng)用程序定義之后,就可以像內(nèi)部函數(shù)一樣調(diào)用。比如,在任意一個(gè)工作表的B3單元格輸出公式“=changeLu(A3)”,然后用填充句柄向下填充若干行,只要在A列輸入小寫金額,B列會(huì)立即顯示對(duì)應(yīng)的大寫金額。(注意:A列單元格的格式要設(shè)置為“數(shù)字作為文本處理”,輸入的數(shù)值要帶有兩位小數(shù)。)

      [參考文獻(xiàn)]

      [1] 李政.Office XP 編程基礎(chǔ)與開發(fā)實(shí)例[M].北京:國(guó)防工業(yè)出版社,2001,(10).

      猜你喜歡
      函數(shù)
      二次函數(shù)
      第3講 “函數(shù)”復(fù)習(xí)精講
      二次函數(shù)
      函數(shù)備考精講
      阿拉尔市| 黎川县| 普格县| 马关县| 大英县| 定远县| 南投市| 泸定县| 阜南县| 镶黄旗| 贡嘎县| 农安县| 长岛县| 获嘉县| 固阳县| 稷山县| 龙胜| 石屏县| 石景山区| 洛川县| 马龙县| 华容县| 绩溪县| 贡嘎县| 卢湾区| 务川| 阳春市| 穆棱市| 平利县| 广南县| 密云县| 荔浦县| 横峰县| 富蕴县| 洪洞县| 孟津县| 红桥区| 资兴市| 呼伦贝尔市| 盐山县| 崇左市|