1、在VB中,建立一個FORM,在其上放置兩個指令按鈕,将Command1的Caption屬性改為EXCEL,Command2的Caption屬性改為End。然後在其中輸入如下程式:
Dim xlApp As Excel.Application '定義EXCEL類
Dim xlBook As Excel.Workbook '定義工件簿類
Dim xlsheet As Excel.Worksheet '定義工作表類
Private Sub Command1_Click() '打開EXCEL過程
If Dir("D:/temp/excel.bz") = "" Then '判斷EXCEL是否打開
Set xlApp = CreateObject("Excel.Application") '建立EXCEL應用類
xlApp.Visible = True '設定EXCEL可見
Set xlBook = xlApp.Workbooks.Open("D:/temp/bb.xls") '打開EXCEL工作簿
Set xlsheet = xlBook.Worksheets(1) '打開EXCEL工作表
xlsheet.Activate '激活工作表
xlsheet.Cells(1, 1) = "abc" '給單元格1行駛列指派
xlBook.RunAutoMacros (xlAutoOpen) 運作EXCEL中的啟動宏
Else
MsgBox ("EXCEL已打開")
End If
End Sub
Private Sub Command2_Click()
If Dir("D:/temp/excel.bz") <> "" Then '由VB關閉EXCEL
xlBook.RunAutoMacros (xlAutoClose) '執行EXCEL關閉宏
xlBook.Close (True) '關閉EXCEL工作簿
xlApp.Quit '關閉EXCEL
End If
Set xlApp = Nothing '釋放EXCEL對象
End
End Sub
2、在D盤根目錄上建立一個名為Temp的子目錄,在Temp目錄下建立一個名為"bb.xls"的EXCEL檔案。
3、在"bb.xls"中打開Visual Basic編輯器,在工程視窗中點滑鼠鍵選擇插入子產品,在子產品中輸入入下程式存盤:
Sub auto_open()
Open "d:/temp/excel.bz" For Output As #1 '寫标志檔案
Close #1
End Sub
Sub auto_close()
Kill "d:/temp/excel.bz" '删除标志檔案
End Sub
4、運作VB程式,點選EXCEL按鈕可以打開EXCEL系統,打開EXCEL系統後,VB程式和EXCEL分别屬兩個不同的應用系統,均可同時進行操作,由于系統加了判斷,是以在VB程式中重複點選EXCEL按鈕時會提示EXCEL已打開。如果在EXCEL中關閉EXCEL後再點EXCEL按鈕,則會重新打開EXCEL。而無論EXCEL打開與否,通過VB程式均可關閉EXCEL。這樣就實作了VB與EXCEL的無縫連接配接