Dim myApp As Excel.Application
Dim myBook As Excel.Workbook
Dim mySheet As Excel.Worksheet
Dim strDestination As String
strDestination = App.Path & "\Excel.xls" Set myApp = CreateObject("excel.application")
myApp.Visible = False
Set myBook = myApp.Workbooks.Open(strDestination)
Set mySheet = myBook.Worksheets(1)
mySheet.Cells.Clear
.......
myBook.Close
myApp.Quit '退出Excel
Set myApp = Nothing
Dim myBook As Excel.Workbook
Dim mySheet As Excel.Worksheet
Dim strDestination As String
strDestination = App.Path & "\Excel.xls" Set myApp = CreateObject("excel.application")
myApp.Visible = False
Set myBook = myApp.Workbooks.Open(strDestination)
Set mySheet = myBook.Worksheets(1)
mySheet.Cells.Clear
.......
myBook.Close
myApp.Quit '退出Excel
Set myApp = Nothing
一.Excel对象模块
Application
对象 | 集合
----------------------------------
|-----Assistant |----Addins(Addin)
|-----AutoComect |-----OLEDBErrors
|-----Debug |-----CommandBars(CommandBar)
|-----VBE |-----Dialogs(Dialog)
|-----WorksheetFunction |-----RecentFilds(RecentFile)
|-----DefaultWebOptions |-----Windows(Window)
|-----LanguageSettings |-----Workbooks(Workbook)
|-----Filesearch |------Names(name)
|-----AnswerWizard |------ODBCErrors 最上层的Application是指整个应用程序,其中最常用到的Workbooks代表活页簿集合,在其后的括号内的Workbook是指一个工作簿。
在VB中要打开Excel,首先要引用Microsoft Excel 9.0(或8.0)Object Lobrary。
打开的步骤是:(1)定义两个变量,数据类型指定为Excel.Application.Excel.Workbook.
(2)激活Excel应用程序。(3)打开工作簿(我们假设在当前路径下有一个工作簿students.xls)。
代码如下:
Option Explicit
Public appExcel As Excel.Application
Public wbExcel As Excel.Workbook
Private Sub Setup_Excel_object()
Set appExcel = CreateObject("excel.application")
Set wbExcel = appExcel.Workbooks.Open(App.Path & "\students.xls")
appExcel.Visible = True '使对象可见
End Sub 二.工作表对象Worksheet
Workbooks对象有一个集合对象--工作表Worksheets,,用来放工作表相关的资料。
Workbooks(workbook)
对象 | 集合
------------------------
|----HTMLProjcet |----Publishobjects
|----RoutingSlip |----DocumentProperties
|----Areas |----Worksheets
|----WebOptions |----Names
|----VBProject |----CustomViews
|----CommandBars
|----PivotCaches
|----Windows
|----Styles
|----Charts 调用方法是声明一个工作表变量,用For-Each循环方式可以读取集合对象Workbooks里的所有工作表名。
代码如下:
Dim temp As Excel.Worksheet
For Each temp In wbExcel.Worksheets 'wbExcel是上面代码中声明的Workbook
FORM1.Combo1.AddItem temp.Name
Next 三.读取工作表某个选取范围的内容。
要读取工作表某个范围单元格,可先定义一个Excel范围对象变量,然后使用Rows或Columns函数指定某行或某列的范围,范围单元格(Cells)地址以目前被选取范围为基准。具体方法如下:
(1)设置工作表对象变量操作哪个工作表;
(2)选取工作表的某行或某列;
(3)在上面的选取范围内读取某个单元格内容。
代码如下:
Dim Tempsheet As Excel.Worksheet '定义Excel工作表
Dim TempRange As Excel.Range '定义Excel工作表范围变量
'第一步:选取工作表Sheet1
Set Tempsheet = appExcel.Worksheets("sheet1")
'第二步:选取第二行(以这行为第一行)
Set TempRange = Tempsheet.Rows(2)
'第三步:读取范围内第一行.第二列的单元格
Text1.Text = TempRange.Cells(1, 2) 四.其他
用TempRange.Find("").Column方法可以查找目前范围内第一行的第一个空白单元格