遲津愉 王紅軍
[摘要]Visual Basic是一個功能強大的軟件開發(fā)工具,但在函數(shù)計算上卻有不足之處,而Excel中包含許多Visual Basic中沒有提供的數(shù)學(xué)函數(shù),這為我們程序開發(fā)提供了便利條件,通過一個簡單的例子來說明如何利用ActiveX對象實現(xiàn)Excel函數(shù)的調(diào)用。
[關(guān)鍵詞]程序設(shè)計調(diào)用Excel函數(shù)
中圖分類號:TP3 文獻標識碼:A 文章編號:1671-7597(2009)0110045-01
一、問題的提出
ActiveX是Microsoft對Windows和Internet構(gòu)想的一個重要的組成部分。ActiveX的總體核心是自動化(Automation)技術(shù),該技術(shù)使得對象可在應(yīng)用程序之間方便地共享。而Visual Basic是一個功能強大的軟件開發(fā)工具,它能創(chuàng)建一種能夠定義被外部應(yīng)用程序使用的ActiveX對象的類模塊,因此,自動化技術(shù)的引入使得Visual Basic成為Windows軟件開發(fā)的首選工具。雖然Visual Basic因功能強大而被廣泛的應(yīng)用,但在函數(shù)計算上卻有不足之處,使用起來有一定的局限性。而Excel中包含了許多Visual Basic中沒有提供的數(shù)學(xué)函數(shù),這為我們程序開發(fā)提供了便利條件,利用ActiveX對象便可方便地實現(xiàn)Excel函數(shù)的調(diào)用。
二、實現(xiàn)的方法
實現(xiàn)Excel函數(shù)調(diào)用的代碼很簡單,我們只是想通過一個調(diào)用正切三角函數(shù)的簡單例子來說明實現(xiàn)的方法,以便舉一反三,靈活應(yīng)用。具體代碼如下:
Option Explicit
Private Sub Command1_Click( )
'定義objxl對象
Dim objxl As Object
'創(chuàng)建Excel工作表
Set objxl = CreateObject("Excel.sheet")
Set objxl = objxl.Application.ActiveWorkbook.ActiveSheet
'計算正切值
If Text1.Text = 90 Or Text1.Text = 270Then
MsgBox "請重新輸入角度"
Text1.Text = ""
Else
objxl.Range("A1").Value = Text1.Text
objxl.Range("A2").Formula = "=A1*pi()/180"
objxl.Range("A3").Formula = "=TAN(A2)"
Label1.Caption = objxl.Range("A3").Value
Set objxl = Nothing
End If
End Sub
運行的結(jié)果如下圖:
不難看出,本功能是在命令按鈕的單擊事件中添加相應(yīng)的功能代碼來實現(xiàn)的。本例在運行的過程中首先需要創(chuàng)建一個Excel工作表,然后把輸入的角度值進行弧度轉(zhuǎn)換,調(diào)用相應(yīng)的函數(shù),經(jīng)計算后再返回給窗體,所有的這些Excel操作都是在后臺進行的,用戶幾乎覺察不到,因此使用起來很方便。
在本例中,我們使用了Excel工作表對象的這項技術(shù),它可適用于多種數(shù)據(jù)、計算類型和復(fù)雜程序,并且數(shù)據(jù)計算的最終結(jié)果可復(fù)制到Visual Basic應(yīng)用程序中,用Excel對象處理數(shù)據(jù)操作和數(shù)據(jù)計算的某些類型比使用Visual Basic編程要容易和有效得多,而所有Office應(yīng)用程序都提供了ActiveX對象,用戶也可在Visual Basic程序設(shè)計中利用,因此,在程序設(shè)計過程中使用多種技術(shù)的聯(lián)合應(yīng)用,可以使我們的程序功能效率大大提高。
參考文獻:
[1]張煒,中文版Visual Basic6.0數(shù)據(jù)庫開發(fā)應(yīng)用教程[M].北京:航空工業(yè)出版社,2000.
[2]John Clark Craig and Jeff Webb[美].Visual Basic6.0程序開發(fā)環(huán)境[M].北京:北京大學(xué)出版社,2000.
[3] Mark Dodge Craig Stinson.精通Microsoft Excel2002中文版[M].北京:清華大學(xué)出版社,2002.
作者簡介:
遲津愉,女,遼寧沈陽人,實驗師,從事計算機教學(xué)工作。