何制作復(fù)雜報(bào)表——利用excel輸出復(fù)雜報(bào)表
在讀這篇文章以前首先要提醒大家,Access 本身的報(bào)表也具有很強(qiáng)的實(shí)用性和強(qiáng)大的功能,只有當(dāng)你發(fā)掘了其本身全部的功能卻仍不能滿足你對報(bào)表的特殊要求時(shí)才請使用 Excel 輸出報(bào)表。很明顯,使用 Excel 輸出報(bào)表第一個(gè)弱點(diǎn)就是必須同時(shí)打開 Access 和 Excel (當(dāng)然,你得在一臺機(jī)器上同時(shí)安裝 Access 和 Excel),當(dāng)然如果你和我一樣擁有工作在 966MHz 上的 CPU 和 256M 內(nèi)存以及大容量硬盤時(shí),那就不必考慮了,繼續(xù)吧。
首先找到 VBA 編程界面并找到"工具"菜單并單擊"引用..."菜單項(xiàng),在彈出的"引用"窗體中找到"現(xiàn)有引用"列表,在名為"Microsoft Excel x.0 Object Library"的項(xiàng)目前的方框內(nèi)打鉤。
其次,你要做好一張空白的 Excel 電子表格,設(shè)定好顯示字體、邊框、打印紙張等等并將其存盤。(以下示例中該表格名為 "temp.xls" )當(dāng)然啦,直接使用空白的 Excel 文件也是可以的,不過你要編程自動(dòng)生成表格邊框、背景顏色、單元格格式等一些內(nèi)容,這些涉及到 Excel 編程,我以后會在 Excel 專欄里詳細(xì)敘述,這里就不多說了。
然后你就可以在 Access 里面制作你自己的打印預(yù)覽窗體了,在窗體中安排 2 個(gè)命令按鈕,在名為預(yù)覽的按鈕的 click 事件里輸入以下代碼:
Private Sub ExcelPreview_Click()
Dim xlApp As Excel.Application
Dim xlBook As Workbook, xlSheet As Worksheet
Set xlApp = CreateObject("Excel.Application")
Set xlApp = New Excel.Application
xlApp.Visible = True
Set xlBook = xlApp.Workbooks.Open("c: eprotemp.xls")
Set xlSheet = xlBook.Worksheets(1)
xlSheet.Cells(3, 1) = "制表日期:" + "12" + " 月"
'以上只更改了一個(gè)單元格內(nèi)的數(shù)據(jù),可根據(jù)需要無限次加入
xlBook.Save
xlSheet.PrintPreview '如果是要打印,只要把 PrintPreview 改為 PrintOut
xlBook.close
xlApp.Quit
End Sub
OK,然后就可以單擊該按鈕看看生成的表格如何了。
更多信息請查看IT技術(shù)專欄