Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

ACCESS批量打印EXCEL文件

阿木  发表于:2009-09-12 09:59:08  
复制

有没有办法实现:

 

用VB语言批量打印按ACCESS指定的EXCEL里面的文件(固定文件薄里面的一个固定表)呢?

 

Top
ACMAIN.CHM 发表于:2009-09-12 15:12:05

VB 中可以直接通过 excel.application 来操作EXCEL

 

你可以通过ADO联接ACCESS的MDB数据库文件,然后通过VB打开 excel.application 然后进行相应的操作。

 



阿木 发表于:2009-09-15 11:48:00

谢谢回复,我现在就是用这个方法处理的,但要打印的文档很多,而且都是有固定的表,不知道有没有办法实现,批量选中,然后直接打印就行的.



乔峰 发表于:2009-09-17 23:31:10
1楼是老乡啊,应该是可以批量打印的吧,宏可在ACCESS里, 主要是对EXCEL 工作簿和 工作表的 对象的 处理。

乔峰 发表于:2009-09-18 01:03:32

Private Sub Command1_Click()
'引用 microsoft excel 11.0 object library
    Dim PageCount As Integer, excApp As Excel.Application
    Dim excWb As Excel.Workbook, i As Integer
    Set excApp = CreateObject("Excel.Application")
    Set excWb = excApp.Workbooks.Open(CurrentProject.Path & "\test.xls")
    excApp.Visible = True
    With excWb.Sheets("Sheet1")
        .PageSetup.PrintTitleRows = "$1:$1"
        PageCount = (.HPageBreaks.Count + 1) * (.VPageBreaks.Count + 1)

        '1                            '这个是一般打印,直接全部打印出来,灵活性不够
        '.PrintOut

        '2                            '这里就是可控制打印代码,标头,标尾,打印行数都可以设置
        For i = 1 To PageCount
            'ActiveWindow.SelectedSheets.......等效
            Windows(excWb.Name).SelectedSheets.PrintOut From:=i, To:=i, Copies:=1, Collate:=True
        Next
    End With
    excWb.Close False
    Set excWb = Nothing
    excApp.Quit
    Set excApp = Nothing
End Sub



总记录:4篇  页次:1/1 9 1 :