0000excel奇偶页打印

来源:百度文库 编辑:神马文学网 时间:2024/04/18 21:33:59
     启动Excel程序或打开一个Excel文件,单击菜单工具->宏->录制新宏,在弹出的录制新宏对话框中设定新的宏名“手动双面打印” ,将宏保存在“个人宏工作簙”中 ,单击确定后,按停止录制宏按钮。按“Alt+F11”进入Microsoft Visual Basic编辑器,在编辑器中的VBAProject(PERSONAL.XLS)中找到模块1并双击,然后在右侧的窗口中输入如下代码:

Sub 手动双面打印()

   Dim Pages As Long

   Dim myBottonNum As Integer

   Dim myPrompt1 As String

   Dim myPrompt2 As String

   myPrompt1 = "在打印时发生错误,请检查你的打印机设置"

   myPrompt2 = "请将出纸器中已打印好一面的纸取出并将其放回到送纸器中,然后按下""确定"",继续打印"

   Pages = ExecuteExcel4Macro("Get.Document(50)")          '统计总页数

  

   On Error Resume Next

  

   If (Pages = 0) Then         '如果为零,说明没有可打印内容,退出程序

       MsgBox "Microsoft Excel 未发现任何可以打印的内容", 0 + 48

      Exit Sub

   End If

  

   If (Pages = 1) Then          '判断是否只有一页,如果是,只打印第一页,然后退出

       ActiveSheet.PrintOut

       If Err.Number = 1004 Then

             MsgBox myPrompt1, 0 + 48        '提示用户发生打印错误

       End If

       Exit Sub

   End If

  

   For i = 1 To Pages Step 2             '设置循环,打印奇数页

       ActiveSheet.PrintOut From:=i, To:=i  

    'ActiveSheet.PrintOut Copies:=3 From:=i, To:=i    打印3份

       If Err.Number = 1004 Then

                 MsgBox myPrompt1, 0 + 48

                  Exit Sub

       End If

   Next i

  

   myBottonNum = MsgBox(myPrompt2, 1 + 48)         '提示用户取出纸张,确认后继续打印

  

   If (myBottonNum = 1) Then

       For j = 2 To Pages Step 2             '打印偶数页

              ActiveSheet.PrintOut From:=j, To:=j

       Next j

   End If

End Sub

 

    按Alt+Q返回到工作表窗口,单击菜单“工具”→“自定义”,在弹出的自定义对话框中选择“命令”选项卡,在命令选项卡中选择“宏”→“自定义按钮”。 拖动自定义按钮到菜单栏或工具栏上,右击刚刚拖到菜单栏或工具栏上自定义按钮,然后在“命名”后面输入“双面打印”,然后关闭自定义对话框。单击按钮,在弹出的“指定宏”对话框中选择我们刚才创建的宏。

    到此,命令基本添加完毕!

    关闭并保存工作簿 打开Execl工作簙,单击刚创建的宏按钮,程序就会自动先打印所有奇数页,然后提示取出纸张,确认后再打印所有偶数页,基本类似于Word的手动双面打印。