日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

基于VB和EXCEL的报表设计及打印

發布時間:2025/3/20 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 基于VB和EXCEL的报表设计及打印 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

基于VB和EXCEL的報表設計及打印 ?
? ? ?
? 文/朱詩兵 高栓 ? ?
? ?
? ?
?   在現代管理信息系統的開發中,經常涉及到數據信息的分析、加工, ? ?
? 最終還需把統計結果形成各種形式的報表提供給領導決策參考,或進行外 ? ?
? 部交流。在Visual ? Basic中制作報表,通常是用數據環境設計器(Data ? ?
? Environment ? Designer)與數據報表設計器(Data ? Report ? Designer),或者 ? ?
? 使用第三方產品來完成。但對于大多數習慣于Excel報表的用戶而言,用以 ? ?
? 上方法生成的報表在格式和功能等方面往往不能滿足他們的要求。 ? ?
? ?
?   由于Excel具有自己的對象庫,在Visual ? Basic工程中可以加以引用, ? ?
? 通過對Excel使用OLE自動化,可以創建一些外觀整潔的報表,然后打印輸 ? ?
? 出。這樣實現了Visual ? Basi應用程序對Excel的控制。本文將針對一個具 ? ?
? 體實例,闡述基于VB和EXCEL的報表設計及打印過程。 ? ?
? ?
?  1)創建Excel對象 ? ?
? ?
?   Excel對象模型包括了128個不同的對象,從矩形、文本框等簡單的對 ? ?
? 象到透視表,圖表等復雜的對象。下面簡單介紹一下其中最重要,也是用 ? ?
? 得最多的五個對象。 ? ?
? ?
? (1)Application對象 ? ?
? ?
?   Application對象處于Excel對象層次結構的頂層,表示 ? Excel自身的 ? ?
? 運行環境。 ? ?
? ?
? (2)Workbook對象 ? ?
? ?
?   Workbook對象直接地處于Application對象的下層,表示一個Excel工 ? ?
? 作薄文件。 ? ?
? ?
? (3)Worksheet對象 ? ?
? ?
?   Worksheet對象包含于Workbook對象,表示一個Excel工作表。 ? ?
? ?
? (4)Range對象 ? ?
? ?
?   Range對象包含于Worksheet對象,表示 ? Excel工作表中的一個或多個 ? ?
? 單元格。 ? ?
? ?
? (5)Cells對象 ? ?
? ?
?   Cells對象包含于Worksheet對象,表示Excel工作表中的一個單元格。 ? ?
?   如果要啟動一個Excel,使用Workbook和Worksheet對象,下面的代碼 ? ?
? 啟動了Excel并創建了一個新的包含一個工作表的工作薄: ? ?
? ?
? Dim ? zsbexcel ? As ? Excel.Application ? ?
? Set ? zsbexcel ? = ? New ? Excel.Application ? ?
?     zsbexcel.Visible ? = ? True ? ?
? ?
? 如要Excel不可見,可使zsbexcel.Visible ? = ? False ? ?
? ?
?   zsbexcel.SheetsInNewWorkbook ? = ? 1 ? ?
?   Set ? zsbworkbook ? = ? zsbexcel.Workbooks.Add ? ?
? ?
?  2)設置單元格和區域值 ? ?
? ?
?   要設置一張工作表中每個單元格的值,可以使用Worksheet對象的 ? ?
? Range屬性或Cells屬性。 ? ?
? ?
? With ? zsbexcel.ActiveSheet ? ?
?     .Cells(1, ? 2).Value ? = ? "100" ? ?
?     .Cells(2, ? 2).Value ? = ? "200" ? ?
?     .Cells(3, ? 2).Value ? = ? "=SUM(B1:B2)" ? ?
?     .Range("A3:A9") ? = ? "中國人民解放軍" ? ?
?   End ? With ? ?
? ?
?   要設置單元格或區域的字體、邊框,可以利用Range對象或Cells對象 ? ?
? 的Borders屬性和Font屬性: ? ?
? ?
?   With ? objexcel.ActiveSheet.Range("A2:K9").Borders  ? '邊框設置 ? ?
?     .LineStyle ? = ? xlBorderLineStyleContinuous ? ?
?     .Weight ? = ? xlThin ? ?
?     .ColorIndex ? = ? 1 ? ?
?   End ? With ? ?
?   With ? objexcel.ActiveSheet.Range("A3:K9").Font  '字體設置 ? ?
?     .Size ? = ? 14 ? ?
?     .Bold ? = ? True ? ?
?     .Italic ? = ? True ? ?
?     .ColorIndex ? = ? 3 ? ?
?   End ? With ? ?
? ?
?   通過對Excel單元格和區域值的各種設置的深入了解,可以創建各種復 ? ?
? 雜、美觀、滿足需要的、具有自己特點的報表。 ? ?
? ?
?  3)預覽及打印 ? ?
? ?
?   生成所需要的工作表后,就可以對EXCEL發出預覽、打印指令了。 ? ?
? ?
?   zsbexcel.ActiveSheet.PageSetup.Orientation ? = ? xlPortrait   ? ' ? ?
?   設置打印方向 ? ?
?   zsbexcel.ActiveSheet.PageSetup.PaperSize ? = ? xlPaperA4   ' ? ?
?   設置打印紙的打下 ? ?
?   zsbexcel.Caption ? = ? "打印預覽"        ? '設置預覽窗口的 ? ?
?   標題 ? ?
?   zsbexcel.ActiveSheet.PrintPreview      '打印預覽 ? ?
?   zsbexcel.ActiveSheet.PrintOut        '打印輸出 ? ?
? ?
?   通過打印方向、打印紙張大小的設置,不斷進行預覽,直到滿意為止, ? ?
? 最終進行打印輸出。 ? ?
? ?
?   為了在退出應用程序后EXCEL不提示用戶是否保存已修改的文件,需使 ? ?
? 用如下語句: ? ?
? ?
?   zsbexcel.DisplayAlerts ? = ? False ? ?
?   zsbexcel.Quit    ? '退出EXCEL ? ?
?   zsbexcel.DisplayAlerts ? = ? True ? ?
? ?
?   如此設計的報表打印是通過 ? EXCEL程序來后臺實現的。對于使用者來 ? ?
? 說,根本看不到具體過程,只看到一張張漂亮的報表輕易地被打印出來了。 ? ?
? ?
?  4)具體實例 ? ?
? ?
?   下面給出一個具體實例,它在window98、Visual ? Basic ? 6.0、 ? ?
? Microsoft ? Office97的環境下調試通過。 ? ?
? ?
?   在VB中啟動一個新的Standard ? EXE工程,在“工程”菜單的“引用” ? ?
? 選項下引用Excel ? Object ? Library;然后在Form中添加一個命令按鈕 ? ?
? cmdExcel;最后在窗體中輸入如下代碼: ? ?
? ?
?   Dim ? zsbexcel ? As ? Excel.Application ? ?
?       Private ? Sub ? cmdExcel_Click() ? ?
?           Set ? zsbexcel ? = ? New ? Excel.Application ? ?
?    zsbexcel.Visible ? = ? True ? ?
?    zsbexcel.SheetsInNewWorkbook ? = ? 1 ? ?
?    Set ? zsbworkbook ? = ? zsbexcel.Workbooks.Add ? ?
?    With ? zsbexcel.ActiveSheet.Range("A2:C9").Borders   '邊框設置 ? ?
?       .LineStyle ? = ? xlBorderLineStyleContinuous ? ?
?       .Weight ? = ? xlThin ? ?
?       .ColorIndex ? = ? 1 ? ?
?       End ? With ? ?
?    With ? zsbexcel.ActiveSheet.Range("A3:C9").Font  '字體設置 ? ?
?        ? .Size ? = ? 14 ? ?
?       .Bold ? = ? True ? ?
?       .Italic ? = ? True ? ?
?       .ColorIndex ? = ? 3 ? ?
?    End ? With ? ?
?   zsbexcel.ActiveSheet.Rows.HorizontalAlignment ? = ? ?
? xlVAlignCenter   '水平居中 ? ?
? ?
?   zsbexcel.ActiveSheet.Rows.VerticalAlignment ? = ? ?
? xlVAlignCenter    '垂直居中 ? ?
? ?
?   With ? zsbexcel.ActiveSheet ? ?
?     .Cells(1, ? 2).Value ? = ? "100" ? ?
?     .Cells(2, ? 2).Value ? = ? "200" ? ?
?     .Cells(3, ? 2).Value ? = ? "=SUM(B1:B2)" ? ?
?     .Cells(1, ? 3).Value ? = ? "中國人民解放軍" ? ?
?     .Range("A3:A9") ? = ? "50" ? ?
?   End ? With ? ?
?  zsbexcel.ActiveSheet.PageSetup.Orientation ? = ? xlPortrait    ? ' ? ?
? xlLandscape ? ?
?  zsbexcel.ActiveSheet.PageSetup.PaperSize ? = ? xlPaperA4 ? ?
?  zsbexcel.ActiveSheet.PrintOut ? ?
?  zsbexcel.DisplayAlerts ? = ? False ? ?
?  zsbexcel.Quit ? ?
?  zsbexcel.DisplayAlerts ? = ? True ? ?
?  Set ? zsbexcel ? = ? Nothing????

總結

以上是生活随笔為你收集整理的基于VB和EXCEL的报表设计及打印的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。