top
Loading...
VB5.0調用Office97技巧
Visual Basic 5.0具有簡單、易學等特點,深受初學者的歡迎,但也有一些不如人意的地方。例如,不能像Word 97那樣進行拼寫檢查,不能像Excel 97那樣具有很多的函數。如果我們能將Word 97和Exce l97的功能使用在Visual Basic 5.0中,就可以使VB達到錦上添花的目的。

我們知道所有Office 97 應用程序都提供了ActiveX對象,我們可以在Visual Basic 5.0中使用它們。

調用Word 97

要想在VB中調用Word 97,首先要打開VB的“工程”菜單中的“引用”項目,并在該項目對話框中選定“Microsoft Word 8.0 Object Library”就可以了。

下面我們舉例說明調用Word 97中的“拼寫檢查”和“單詞統計”功能。首先新建一個工程并在窗體上放置一個TextBox控件和兩個CommandButton控件,然后添入如下的代碼:

Option Explicit

Dim Doc As New Document

Dim Visi As Boolean

圖1 調用Word 97

′拼寫檢查

Private Sub Command1-Click()

Form1.Caption = “拼寫檢查"

Doc.Range.Text = Text1

′確定范圍

Doc.Application.Visible = True ′將Word 97變為可見

AppActivate Doc.Application.Caption

′激活Word 97

Doc.Range.CheckSpelling

′拼寫檢查

Text1 = Doc.Range.Text

Text1 = Left(Text1, Len(Text1) - 1)

AppActivate Caption

End Sub

′統計單詞數

Private Sub Command2-Click()

Dim Dlg As Word.Dialog

Doc.Range = Text1.Text

Set Dlg = Doc.Application.Dialogs

(wdDialogDocumentStatistics)

Dlg.Execute ′統計單詞和字符

Form1.Caption =“單詞數:" & Str(Dlg.Words) & “詞"

& Str(Dlg.Characters) & “字符" ′顯示統計結果

End Sub

Private Sub Form-Load()

Form1.Caption =“調用Word 97"

Text1.Text =

Command1.Caption = “拼寫檢查"

Command2.Caption = “統計單詞"

′使應用程序可見

Visi = Doc.Application.Visible

End Sub

′關閉應用程序

Private Sub Form-Unload(Cancel As Integer)

If Visi Then ′關閉文件

Doc.Close savechanges:=False

Else

Doc.Application.Quit savechanges:=False ′關閉 Word 97

End If

End Sub

運行中的窗體如圖1所示。



圖2 調用Excel 97

調用Excel 97

使用Excel Sheet對象的技術可以處理可變數量的數據,并將結果最后送到你的Visual Basic 應用程序中。例子如下:

新建一個工程并在新建的窗體上放置兩個TextBox控件和一個CommandButton控件及六個Label控件。建設中的窗體如圖2所示。

程序代碼如下:

Option Explicit

Private Sub Command1-Click()

Dim xObject As Object

′調用Excel 97

Set xObject = CreateObject(“Excel.Sheet")

Set xObject = xObject.Application.ActiveWorkbook.ActiveSheet

xObject.Range(“A1").Value = Text1.Text ′將數值送入Excel 97的A1單元格

xObject.Range(“A2").Value = Text2.Text ′將數值送入Excel 97的A2單元格

xObject.Range(“A3").Formula = “=MAX(A1,A2)" ′將最大值送入A3單元格

xObject.Range(“A4").Formula = “=ATAN(A1/A2)*180/PI()" ′將反正切值送入A4單元格

′顯示計算的結果

Label1.Caption = xObject.Range(“A3").Value

Label2.Caption = xObject.Range(“A4").Value

Set xObject = Nothing

End Sub

Private Sub Form_Load()

Text1.Text = “"

Text2.Text = “"

Label1.Caption = “"

Label2.Caption = “"

End Sub

該程序的作用是:首先在兩個文本框(Text1和Text2)輸入數值并分別將輸入的數值送入Excel 97的“A1”和“A2”單元格中,然后用Excel 97中的“Max()”函數將計算的結果送入“A3” 單元格中;用反正切函數“ATAN()”進行計算并將結果送入“A4” 單元格中,最后輸出。
作者:http://www.zhujiangroad.com
來源:http://www.zhujiangroad.com
北斗有巢氏 有巢氏北斗