• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    在VB應用程序中調用Excel2000

    發布: 2007-7-14 20:28 | 作者: 佚名    | 來源: 網絡轉載     | 查看: 11次 | 進入軟件測試論壇討論

    領測軟件測試網  一、Excel對象模型

      為了在VB應用程序中調用Excel,必須要了解Excel對象模型。Excel對象模型描述了Excel的理論結構,所提供的對象很多,其中最重要的對象,即涉及VB調用Excel最可能用到的對象有:

      二、調用Excel

      在VB應用程序中調用Excel,實質是將Excel作為一個外部對象來引用,由Excel對象模型提供能從VB應用程序內部來程序化操縱的對象以及相關的屬性、方法和事件。

      1、在VB工程中添加對Excel類型庫的引用

      為了能從VB應用程序中訪問Excel豐富的內部資源,使Excel應用程序運行得更快,需要在VB工程中添加對Excel類型庫的引用。具體步驟如下:

      a)從VB5“工程”菜單中選擇“引用”;

      b) 在“引用”對話框中選擇Excel類型庫:"Microsoft Excel9.0 Object Library";

      c)單擊左邊小方框,使之出現“√”符號;

      d)按“確定”退出。

      注:要想在VB應用程序中調用Excel,你的計算機系統中必須安裝Excel。

      2、引用Application對象

      Application對象是Excel對象模型的頂層,表示整個Excel應用程序。在VB應用程序中調用Excel,就是使用Application對象的屬性、方法和事件。為此,首先要聲明對象變量:

    Dim VBExcel As Object

      或直接聲明為Excel對象:

    Dim VBExcel As Excel.Application

      在聲明對象變量之后,可用CreateObject函數或GetObject函數給變量賦值新的或已存在的Application對象引用。

      a)用CreateObject函數生成新的對象引用:

    Set VBExcel=CreateObject ("Excel.Application")

      字符串“Excel.Application”是提供Excel應用程序的編程ID,這個變量引用Excel應用程序本身。

      b)用GetO場ect函數打開已存在的對象引用:

    Set AppExcel=GetObject("SAMP.XLS")

      上面語句打開文件SAMP.XLS。

      3、Application對象常用的屬性、方法

    屬性、方法 方法
    Visible屬性 取True或False,表明Excel應用程序是否可見。
    Left,Top屬性 Excel窗口的位置;
    Height, Width屬性 Excel窗口的大;
    WindowState屬性 指定窗口的狀態,。篨IMaximized(最大化)X1 Minimized(最小化)x1 Normal(缺省)。
    Quit方法 退出Microsoft Excel;
    Calculate方法 重新計算所有打開的工作簿、工作表或單元格。
    Evaluate方法 求值數學表達式并返回結果。

      示例1:求值數學表達式:

    Dim VBExcel As Object
    Set VBExcel=CreateObject ("Excel.Application")
    X=VBExcel. Evaluate ("3+5*(cos (1/log (99. 9)))")
      三、使用Excel應用程序

      如前所述,在VB應用程序中調用Excel應用程序,就是使用Application對象的屬性、方法和事件。下面分類給出其中常用的屬性和方法。

      1、使用工作薄

      Workbook對象代表Excel應用程序中當前打開的一個工作簿,包含在Workbooks集合中?梢酝ㄟ^Workbooks集合或表示當前活動工作簿的Active Workbook對象訪問Workbook對象。

      常用的方法有:

    屬性、方法 意義
    Add方法 創建新的空白工作簿,并將其添加到集合中。
    Open方法 打開工作簿。
    Activate方法 激活工作簿,使指定工作簿變為活動工作簿,以便作為Active Workbook對象使用。
    Save方法 按當前路徑和名稱保存現有工作簿(如是首次保存,則將其保存到缺省名稱中,如BOOK1.XLS)。
    SaveAs方法 首次保存工作簿或用另一名稱保存工作簿。
    Close方法 關閉工作簿。
    PrintOut方法 打印工作簿,語法為:

    PrintOut (from, To, Copies, Preview, Printer, ToFile, Collate)

      可選參數:

     From:打印的起始頁號。如省略將從起始位置開始打印。
     To:打印的終止頁號。如省略將打印至最后一頁。
     Copies:要打印的份數。如省略將只打印一份。
     Preview:如果為True則Excel打印指定對象之前進行打印預覽。如果為False,或省略則立即打印該對象。
     Printer:設置活動打印機的名稱。
     ToFile:如果為True則打印輸出到文件。
     Collate:如果為True則逐份打印每份副本。  

      下面語句將活動工作簿的2到5頁打印3份:

    ActiveWorkbook.PrintOut From:=2 To 5 Copies:=3

      示例2:生成、保存、關閉工作簿

    Dim VBExcel As Excel.Application
    Set VBExcel== CreateObject("Excel.Application")
    With VBExcel
    .Workbooks.Add
    With ActiveWorkbook
    .Save As"C: \Temp \OUTPUT.XLS"
    .Close
    End With
    .Quit
    End With

      2、使用工作表

      Sheets集合表示工作簿中所有的工作表?梢酝ㄟ^Sheets集合來訪問、激活、增加、更名和刪除工作表。一個Worksheet對象代表一個工作表。

      常用的屬性、方法有:

    屬性、方法 意義
    Worksheets屬性 返回Sheets集合。
    Name屬性 工作表更名。
    Add方法 創建新工作表并將其添加到工作簿中。
    Select方法 選擇工作表。
    Copy方法 復制工作表。
    Move方法 將指定工作表移到工作簿的另一位置。
    Delete方法 刪除指定工作表。
    PrintOut方法 打印工作表。

      示例3:將C盤工作簿中的工作表復制到A盤工作簿中:

    Dim VBExcel As Excel.Application
    Set VBExcel=CreateObject("Excel.Application")
    With VBExcel
     .Workbooks.Open "C:\Temp\OUTPUT.XLS"
     .Workbooks.Open"A:\OUTPUT1.XLS"
     .Workbooks("OUTPUT.XLS").Sheets ("Sales").Copy
     .Workbooks("OUTPUT1.XLS)
     .Workbooks("OUTPUT1.XLS").Save
     .Workbooks("OUTPUT.XLS").Close
     .Workbooks("OUTPUTI.XLS").Close
     .Quit
    End With

      3、使用單元范圍

      Range對象代表工作表的某一單元格、某一行、某一列、某一選定區域或者某一三維區域。

      常用的屬性、方法有:

    屬性、方法 意義
    Range屬性 Range (arg)其中arg為A1--樣式符號,表示單個單元格或單元格區域。
    Cells屬性 Cells (row, col )(其中row為行號,col為列號)表示單個單元格。
    ColumnWidth屬性 指定區域中所有列的列寬。
    Rowl3eight屬性 指定區域中所有行的行寬。
    Value屬性 指定區域中所有單元格的值(缺省屬性)。
    Formula屬性 指定單元格的公式,由A1--樣式引用。
    Select方法 選擇范圍。
    Copy方法 將范圍的內容復制到剪貼板。
    C1earContents方法 清除范圍的內容。
    Delete方法 刪除指定單元范圍。

      4、使用圖表

      Chart對象代表工作簿中的圖表。該圖表既可為嵌人式圖表(包含于ChartObject對象中)也可為分立的圖表工作表。

      常用方法有:

    方法 意義

    Add方法 新建圖表工作表。返回Chart對象。
    PrineOut方法 打印圖表。
    ChartWizard方法 修改給定圖表的屬性,其語法為:
     
    ChartWizard(Source, Gallery, Format, P1otBy, CategoryLabels,
    SeriesLabels, HasLegend, Title, CategoryTitle, ValueTitle, ExtraTitle)

      其中:

      Source:包含新圖表的源數據的區域。如省略,將修改活動圖表工作表或活動工作表中處于選定狀態的嵌人式圖表。

      Gallery:圖表類型。其值可為下列常量之一:xlArea, x1Bar, xlColumn, xlLine, x1Pie, xlRadar,x1XYScatter, xlCombination, x13DArea, x13DBar、x13DColumn, x13DLine, x13DPie、x13 DSurface、xlDoughnut或xlDefaultAutoFormat。

      Format:內置自動套用格式的編號。如省略,將選擇默認值。

      P1otBy:指定系列中的數據是來自行(xlRows)還是列(xlColumns)。

      CategoryLabels:表示包含分類標志的源區域內行數或列數的整數。

      SeriesLabels:表示包含系列標志的源區域內行數或列數的整數。

      HasLegend:若指定True,則圖表將具有圖例。

      Title:圖表標題文字。

      CategoryTitle:分類軸標題文字。

      ValueTitle:數值軸標題文字。

      ExtraTitle:三維圖表的系列軸標題,或二維圖表的第二數值軸標題。

      可組合使用Add方法和ChartWizard方法,以創建包含工作表中數據的圖表工作表。下例基于工作表“Sheetl”中單元格區域“A1:A20”中的數據生成新的折線圖并打印。

    With Charts.Add
     .ChartWizard source:=Worksheets ("sheet1").Range ("a1:a20"),gallery:=xlLine, title:=“折線圖表”
     .Printout
    End With


      5、使用Excel工作表函數

      在VB語句中可使用大部分的Excel工作表函數,可通過WorksheetFunction對象調用Excel工作表函數。下面的Sub過程用Min工作表函數求出指定區域中單元格的最小值,并通過消息框顯示結果值。

    Sub UseFunction()
    Dim myRange As Range
    Set myRange=Worksheets ("Sheet1").Range("B2:F10")
    answer=Application.WorksheetFunction.Min(myRange)
    MsgBox answer
    End Sub

      如果使用以區域引用為參數的工作表函數,必須指定一個Range對象。如可用Match工作表函數對A1:A10區域的所有單元格進行搜索。

    Sub FindFirst()
    my Var=Application.WorksheetFunction.Match (9, Worksheets( 1).Range("A1:A10"),0)
    MsgBox myVar
    End Sub

      要在單元格中插人工作表函數,可將該函數指定為對應于Range對象的Formula屬性值。在以下示例中,將當前工作簿Sheetl內A1:B3區域的Formula屬性指定為RAND工作表函數(此函數產生二個隨機數)。

    Sub InsertFormula()
    Worksheets ("Sheet1" ).Range("A1:B3").Formula="RAND()"
    End Sub

      以上簡要介紹了Excel對象模型中部分對象及其屬性和方法,更詳細的信息可參閱Excel 2000幫助中的“Microsoft Excel Visual Basic參考”一節的內容。實際上,Microsoft Office家族的Word,PowerPoint, Access和Project等應用程序都可以在VB應用程序中調用,其原理和步驟完全相同,只是其對象模型有所不同而已。 

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備2023014753號-2
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>