亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        用VB調(diào)用Excel實現(xiàn)SPD表自動編制

        2014-04-29 00:44:03劉紅坤孟德東王小麗
        計算機(jī)時代 2014年1期

        劉紅坤 孟德東 王小麗

        摘 要: 檢測電涌保護(hù)器(Surge Protection Device,SPD)時,采集到的批量數(shù)據(jù)需要自動表格化,針對此問題,提出了在Visual Basic(簡稱VB)環(huán)境下調(diào)用Excel對象編程實現(xiàn)自動制SPD表的方法。分析了VB調(diào)用Excel的理論依據(jù)和步驟,闡述了自動繪制SPD表的主要設(shè)計思想,剖析了自動繪制SPD表的關(guān)鍵技術(shù)。實踐證明,此方法可行且有效。

        關(guān)鍵詞: SPD; VB; Excel; 自動制表

        中圖分類號:TP399 文獻(xiàn)標(biāo)志碼:A 文章編號:1006-8228(2014)01-42-02

        0 引言

        VB是Windows應(yīng)用程序強(qiáng)有力的開發(fā)工具,具有強(qiáng)大的數(shù)據(jù)處理功能,但VB的報表功能比較弱。而Excel的表格生成功能十分強(qiáng)大且便利,是一個強(qiáng)有力的信息分析與處理工具,又因為Excel的應(yīng)用程序?qū)ο笫峭獠靠蓜?chuàng)建對象,所以可以用VB應(yīng)用程序來操作Excel,通過兩者結(jié)合,能夠快速、簡便地生成復(fù)雜的表格。本文通過自動生成SPD表的實例來說明VB控制Excel的具體過程,實現(xiàn)海量的SPD檢測數(shù)據(jù)類型表的形成[1-2]。

        1 Excel對象模型

        為了在VB應(yīng)用程序中調(diào)用Excel,必須要了解Excel對象模型。Excel對象模型描述了Excel的理論結(jié)構(gòu),所提供的對象很多,例如:透視表、圖表等對象,下面將對VB調(diào)用Excel的最重要且常用對象作簡要介紹[2-4]。

        ⑴ Application對象

        Application對象是Excel對象模型的頂層,表示整個Excel應(yīng)用程序。在VB應(yīng)用程序中調(diào)用Excel,就是使用Application對象的方法、屬性和事件。

        ⑵ Workbook 對象

        Workbook對象直接隸屬于Application對象的下層,表示一個Excel工作薄文件。Workbook對象的集合構(gòu)成Workbooks對象。可以通過Workbooks集合或表示當(dāng)前活動工作薄的Active Workbook對象訪問Workbook對象。

        ⑶ Worksheet對象

        Worksheet對象包含于Workbook對象中,表示一個Excel工作表。可以通過Worksheets集合來訪問、激活、增加、刪除、更名工作表。

        ⑷ Range對象

        Range對象代表工作表的某一個或多個單元格、某一選定區(qū)域等。

        ⑸ Cells對象

        Cells對象包含于Worksheet對象中,表示Excel工作表中的一個單元格。

        2 在VB編程環(huán)境中調(diào)用Excel對象

        2.1 在VB中添加對Excel類型庫的引用

        為了使VB應(yīng)用程序能夠訪問Excel提供的類型庫,需要設(shè)置對Excel類型庫的引用,在VB6的“工程菜單中選擇“引用”,在對話框中選中“Microsoft Excel 10.0 Object Library”,單擊“確定”按鈕即可。

        2.2 在VB中聲明各對象

        為了能對Excel操作,用VB編程時首先應(yīng)對Excel及其工作薄、工作表等對象進(jìn)行聲明。聲明如下:

        Dim biaoapp As Excel.Application 'Excel對象

        Dim biaobook As Excel.Workbook '工作簿

        Dim biaosheet As Excel.Worksheet '工作表

        2.3 在VB中使用對象變量創(chuàng)建Excel對象的引用

        在聲明對象變量之后,可用CreateObject函數(shù)或GetObject函數(shù)給變量賦值或引用已存在的Appliction對象。

        Set biaoapp=CreateObject("Excel.Application") '創(chuàng)建Excel對象

        Set biaobook=biaoapp.Workbooks.Add

        Set biaosheet=biaobook.Worksheets(1)

        將對象引用賦予變量后,就可以在VB程序中使用Excel對象的方法和屬性了,根據(jù)需要對Excel對象進(jìn)行各種操作。

        2.4 關(guān)閉Excel,釋放引用對象

        在VB程序中創(chuàng)建完對象引用后,使用對象的方法、屬性和事件后,應(yīng)該從內(nèi)存中釋放該對象,通過以下語句來實現(xiàn):

        biaoapp.Quit '結(jié)束Excel對象

        biaoapp.Workbooks.Close

        Set biaoapp=Nothing

        Set biaobook=Nothing

        Set biaosheet=Nothing

        3 VB調(diào)用Excel自動制表的設(shè)計思想

        在SPD的實驗檢測中,需要采集SPD的常規(guī)參數(shù)和電參數(shù)數(shù)據(jù)。當(dāng)有批量的SPD需要檢測時,采用人工記錄大量數(shù)據(jù)的方式,若采集結(jié)果散亂無頭緒,將會對下一步的數(shù)據(jù)處理分析工作帶來極大的不便。如果采用自動生成表格的方式分類記錄數(shù)據(jù),使格式統(tǒng)一,明了清晰,則可以快速檢索出所需數(shù)據(jù)并進(jìn)行加工處理。還可根據(jù)需求將采集到的數(shù)據(jù)以數(shù)據(jù)庫的形式存儲,再從庫中查詢到所需數(shù)據(jù),自動生成數(shù)據(jù)電子表格。

        Microsoft公司的表格處理軟件Excel,在表格方面有強(qiáng)大的功能,但需要人工編輯、操作才能完成表格的制作。而VB的可擴(kuò)展性,使調(diào)用Excel很方便。因此我們可通過VB6編程直接控制Excel的程序,從而實現(xiàn)自動制表的功能。VB6.0以上版本提供了Excel對象,利用它可將數(shù)據(jù)庫直接導(dǎo)入Excel工作薄中,然后編程操作,最后輸出所需格式的表格。

        4 實例說明用VB調(diào)用Excel完成自動制表的關(guān)鍵技術(shù)

        4.1 設(shè)置SPD常規(guī)參數(shù)表

        在SPD檢測中,必需記錄SPD標(biāo)稱放電電流、最大放電電流、最大持續(xù)工作電壓、電壓保護(hù)水平等參數(shù)值,因不同型號的SPD上述參數(shù)值各異,因此有必要設(shè)置SPD常規(guī)參數(shù)表。代碼如下:

        ……

        u=1 '定義初始行

        v=1

        For biaoline=u To u+1

        h=1

        biaosheet.Rows(biaoline).RowHeight=25 '定義行高

        For biaocolu=v To v+6

        With biaosheet

        .Range(.Cells(biaoline,h), .Cells(biaoline,h+1))

        .MergeCells()=True

        '每2個單元格合并為一個

        .Range(.Cells(biaoline,h), .Cells(biaoline,h+1))

        .Borders.LineStyle=1

        '設(shè)置表框為細(xì)實線

        If biaoline=u Then

        .Range(.Cells(biaoline,h), .Cells(biaoline,h+1))

        .Value=title(biaocolu-1)

        End If

        End With

        h=h+2

        Next biaocolu

        Next biaoline

        u=u+page '定義下一頁SPD表的起始行

        ……

        4.2 設(shè)置SPD電參數(shù)表

        在SPD檢測中,還需要記錄SPD的電壓、電流等電參數(shù),不同的SPD電參數(shù)是不同的,一個SPD由不同組小模塊構(gòu)成,小模塊電參數(shù)也不同。因此很有必要設(shè)置SPD電參數(shù)表。設(shè)置關(guān)鍵代碼如下:

        ……

        For x=starpos To firstpage

        For i=starline To starline+3 '小表格的行數(shù)

        biaosheet.Rows(i).RowHeight=25

        For j=a To a+1 '小表格的列數(shù)

        biaosheet.Columns(j).ColumnWidth=6 '設(shè)置列寬

        With biaosheet

        .Range(.Cells(i,j), .Cells(i,j)).Borders.LineStyle=xlContinuous

        '設(shè)置邊框為是實線

        End With

        Next j

        biaosheet.Columns(a+2).ColumnWidth=0.8 '設(shè)置間隔列寬

        Next i

        a=a+3

        r=x Mod 6

        If r=0 Then starline=starline+5

        If r=0 Then a=1

        Next x

        starline=starline+3

        ……

        4.3 打印及預(yù)覽

        借助預(yù)覽及打印生成所需要的工作表后,就可以對Excel發(fā)出預(yù)覽、打印指令[5]。代碼如下:

        ……

        '設(shè)置表的頁邊距

        biaosheet.PageSetup.LeftMargin=1.5/0.035

        biaosheet.PageSetup.RightMargin=1#/0.035

        biaosheet.PageSetup.TopMargin=1/0.035

        biaosheet.PageSetup.BottomMargin=1.5/0.035

        '打印表格

        biaosheet.PrintPreview

        biaosheet.PrintOut

        ……

        5 結(jié)束語

        本文論述了VB編程語言與Excel表格處理軟件相結(jié)合的方法,成功地解決了VB在自動繪制表格方面編程難度較大,效率不高的問題。該方法通過在SPD表格設(shè)計實例中的應(yīng)用,充分體現(xiàn)了VB調(diào)用Excel設(shè)計表格的靈活性,減少了手工設(shè)計表格的繁瑣過程,減輕了繁重的工作,避免了重復(fù)性的工作,實現(xiàn)了SPD復(fù)雜表格的自動輸出功能。在實際工作應(yīng)用中,尤其對SPD批量數(shù)據(jù)處理時,對于大量SPD數(shù)據(jù)表格的自動設(shè)計、輸出,將大大提高工作效率,因此利用VB和Excel結(jié)合來制作SPD表是一種簡單、經(jīng)濟(jì)又高效的解決方案。

        在實際應(yīng)用中我們發(fā)現(xiàn),自動生成測試數(shù)據(jù)的電子表和防雷管理平臺還需要銜接起來,即:將測試SPD的數(shù)據(jù)結(jié)果自動導(dǎo)入防雷管理平臺,這個問題有待于進(jìn)一步研究解決。

        參考文獻(xiàn):

        [1] 明日科技編著.Visual Basic從入門到精通(第3版)[M].清華大學(xué)出版

        社,2012.

        [2] 劉永志,陳學(xué)煌,段新文.VB調(diào)用EXCEL實現(xiàn)報表打印功能[J].甘肅

        科技,2005.21(7):84

        [3] 劉東.VB控制EXCEL生成報表[J].宜賓學(xué)院學(xué)報,2005.12:73

        [4] 楊元法.VB訪問Excel的幾種方式[J].Computer Era,2002.10:34

        [5] 魏彩喬,王曉光,焦?jié)M囤.基于VB和EXCEL的復(fù)雜數(shù)據(jù)報表輸出[J].

        華北航天工業(yè)學(xué)院學(xué)報,2005.15(1):7

        一本一道vs无码中文字幕| 综合91在线精品| 国产精品98福利小视频| 亚洲区一区二区三区四| 亚洲精品国产亚洲av| 国产精品国产亚洲精品看不卡| 北条麻妃国产九九九精品视频 | 人妻系列无码专区久久五月天 | 一二三四在线观看韩国视频| 日韩精品极品免费视频观看| 含紧一点h边做边走动免费视频| 久久精品国产69国产精品亚洲| YW亚洲AV无码乱码在线观看| 区一区一日本高清视频在线观看 | 色婷婷精品久久二区二区蜜臀av | 亚洲男人av天堂午夜在| 亚洲aⅴ无码日韩av无码网站| 宅男久久精品国产亚洲av麻豆| 国产成人亚洲系列毛片| 亚洲线精品一区二区三区| 日日婷婷夜日日天干| 亚洲产在线精品亚洲第一站一| 少妇一级aa一区二区三区片| 亚洲乱码中文字幕三四区| 野花香社区在线视频观看播放| 久久亚洲国产成人精品性色| 亚洲成a人片在线播放观看国产| 成人在线视频亚洲国产| 蜜桃视频国产一区二区| 无码欧美毛片一区二区三| 成人动漫久久| 男女男在线精品免费观看| 开心久久婷婷综合中文字幕| 亚洲精品色午夜无码专区日韩 | 国内自拍视频在线观看| 久久久麻豆精亚洲av麻花| 亚洲第一最快av网站| 国产主播一区二区三区在线观看| 一区二区特别黄色大片| 精品久久中文字幕系列| 亚洲国产一区二区三区在线观看|