天天看點

VB和EXCEL的無縫連接配接!!

 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的無縫連接配接

繼續閱讀