Excel、Access、VB的結(jié)合應(yīng)用.txt_第1頁(yè)
已閱讀1頁(yè),還剩3頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、Excel、Access、VB 的結(jié)合應(yīng)用作者:楊偉民 ---- 微軟公司的 Office 系列辦公軟件相信已是眾所周知,其中 Excel 強(qiáng)大的統(tǒng)計(jì)制表功能、Access 功能完備的數(shù)據(jù)處理能力深受眾多用戶(hù)所喜愛(ài)。Visual Bsaic 更是微軟公司又一有力的產(chǎn)品,它簡(jiǎn)單易學(xué),在 Windows 編程中的應(yīng)用十分廣泛。本文通過(guò)介紹數(shù)據(jù)處理及復(fù)雜表格的打印,來(lái)討論 VB 與 Excel 及Access 的結(jié)合運(yùn)用。 ---- 由于筆者

2、所在的公司員工眾多,在進(jìn)行職工養(yǎng)老保險(xiǎn)繳費(fèi)的計(jì)算工作時(shí),若使用勞動(dòng)局編制的軟件(用Foxbase 編寫(xiě)),無(wú)論是在管理或維護(hù)方面均顯得力不從心。于是在公司領(lǐng)導(dǎo)的強(qiáng)烈要求下,決定由筆者構(gòu)思重新編制?;舅悸肥牵?.將所有員工資料輸入 Access 進(jìn)行處理,以便于維護(hù)。2.在 Excel 中預(yù)先制成有表頭的空表(Access 相對(duì)欠缺處理復(fù)雜表格的能力),對(duì)需要進(jìn)行金額匯總或其他運(yùn)算的單元格可直接輸入公式。3.在 VB 中編寫(xiě)程序代碼,從

3、 Access 中提取數(shù)據(jù)填入 Excel 對(duì)應(yīng)表格相應(yīng)的單元格,并輸出至打印機(jī)。 ---- 部分窗體及源程序代碼如下: ---- 1.程序主模塊 ---- 定義 Excel、Access 對(duì)象變量,顯示系統(tǒng)啟動(dòng)畫(huà)面,進(jìn)入系統(tǒng)主程序界面。強(qiáng)調(diào)一下,在編寫(xiě)程序之前須加入對(duì) Excel 及 Access 庫(kù)函數(shù)的引用,具體操作是:選擇菜單欄'工程'\'引用…',將'可使用的引用'列表框內(nèi)

4、9;Microsoft Access 8.0 Object Library'和 'Microsoft Excel 8.0 Object Library'兩項(xiàng)前的復(fù)選框標(biāo)為選中,按“確定“返回。 mdsMain.bas'定義數(shù)據(jù)庫(kù)記錄集及 Excel 對(duì)象變量 Public ex As New Excel.Application Public exwbook As Excel.Workbook Public

5、 exsheet As Excel.Worksheet Public mydatabase As Database Public myrecordset1 As Recordset[定義記錄集]…………Public Opt As Integer '報(bào)表選項(xiàng)[Opt 為 frmSelreport.frm 返回值] Public isYN As Boolean Sub Main() Load frmSplash frmSplash.

6、Show frmSplash.Label2.Caption = “ 系統(tǒng)正在加載 Access 數(shù)據(jù)庫(kù)...“Set mydatabase = OpenDatabase(“c:\sbda\sbda.mdb“) Set myrecordset1 = mydatabase.OpenRecordset(“報(bào)表打印(一)“)[此處對(duì)記錄集賦值]………… frmSplash.Label2.Caption = “ 系統(tǒng)正在加載 Excel 電子表格

7、...“ Set ex = CreateObject(“excel.application“) Set exwbook = ex.Workbooks.Open(“c:\sbda\sbda.xls“)Load FrmInput '將數(shù)據(jù)輸入窗體加載到內(nèi)存中 Unload frmSplashLoad FrmMain '將主程序界面加載到內(nèi)存中 End Sub---- 2.報(bào)表打印模塊 Select Case Op

8、t '選擇需要打印的表格Case 1 myrecordset1.MoveFirst n = (BeginPage - 1) * (49 - 4 + 1) - 1 myrecordset1.Move n PageN = BeginPage Call ExcelDoForVB1 '數(shù)據(jù)填入 Excel 單元格并打印Case 2…………End SelectCase 1Select Case Opt '選擇需

9、要打印的表格Case 1 myrecordset1.MoveFirst n = (BeginPage - 1) * (49 - 4 + 1) - 1 myrecordset1.Move n PageN = BeginPage For nBtoE = BeginPage To EndPageCall ExcelDoForVB1 '填入 Excel 單元格并打印PageN = PageN + 1 Next nBtoECase 2…

10、………End SelectEnd SelectEnd IfEnd IfFrmMain.Visible = TrueExit Sub errhandle:FrmPrint.Visible = False FrmMain.Visible = True End Sub---- 注意,下段僅通過(guò) ExcelDoForVB1()對(duì)“報(bào)表(一)“的處理,來(lái)說(shuō)明數(shù)據(jù)填入 Excel 并打印的整個(gè)過(guò)程。 Sub ExcelDoForVB1()

11、 '打印報(bào)表(一)FrmPrint.Visible = TrueSet exsheet = exwbook.Worksheets(“sheet1“)ex.Sheets(“Sheet1“).Selectex.Range(“A4:U49“).Selectex.Selection.ClearContentsex.Range(“A4“).Selectbar1.Min = 0 bar1.Max = 45 For nRo

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論