国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

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

2009-02-01 03:29顧士學(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)換,雖然我們通過(guò)設(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)嵌的編程語(yǔ)言VBA進(jìn)行二次開發(fā)得到的應(yīng)用軟件,既可以使繁瑣、重復(fù)操作自動(dòng)化,提高工作效率和應(yīng)用水平,同時(shí)又不改變Excel原有的界面風(fēng)格、系統(tǒng)功能和操作方式,特別是它的編輯、排版、打印功能。用戶不必經(jīng)過(guò)特殊學(xué)習(xí)和培訓(xùn),即可使用,大大降低軟件的使用門檻,提高了軟件的可用性。

2 VBA簡(jiǎn)介

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

VBA具有以下特征:

2.1 VBA 是一種解釋性語(yǔ)言

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

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

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

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

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

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

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

Function ChangeLU(XXJE As String)

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

JE = "分角元拾佰仟萬(wàn)拾佰仟億"

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) = "萬(wàn)" 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 + "萬(wàn)"

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ù)
二次函數(shù)
函數(shù)備考精講