在Excel 2003中,可以通过菜单“格式→工作表→背景”来给工作表添加一个背景,但通过这种方法添加的背景不能打印。如果需要打印工作表背景,可以用下面的几种方法:
??? 一、将打印区域复制为图片
??? 1.单击菜单“格式→工作表→背景”,给工作表添加一个背景。
??? 2.选择需要打印的区域,按住Shift键,单击菜单“编辑→复制图片”。在弹出的“复制图片”对话框中,选择“如屏幕所示”,单击“确定”。
?????
??? 3.新建一个工作表,选择某个单元格,单击工具栏中的“粘贴”按钮粘贴图片,然后打印。
??? 二、在页眉中添加图片
??? 1.单击菜单“文件→页面设置→页眉/页脚”,单击“自定义页眉”按钮。
??? 2.在“页眉”对话框中,单击“插入图片”按钮,然后在“插入图片”对话框中选择需要作为背景的图片。
?
??? 3.单击“插入图片”按钮右侧的“设置图片格式”按钮,弹出“设置图片格式”对话框。在“大小”选项卡中,根据需要设置图片为适当的大小,如在“比例”区域中调整图片高度为“200%”。
?????
??? 3,单击3次“确定”按钮,然后进行打印预览或打印。
??? 三、用VBA代码
??? 1.单击菜单“格式→工作表→背景”,给工作表添加一个背景。
??? 2.按Alt+F11,打开VBA编辑器,在右侧的代码窗口中输入下面的代码:
??? Sub PrintBG()
??? Dim RngToPrint As Range
??? Dim Shp As Shape
??? On Error GoTo WasError
??? Set RngToPrint = Range(ActiveSheet.PageSetup.PrintArea)
??? Range("a1").Select
??? ActiveWindow.DisplayHeadings = False
??? With RngToPrint
????? .CopyPicture Appearance:=xlScreen, Format:=xlBitmap
????? With .Parent
???? ?.Paste Destination:=RngToPrint
????? Set Shp = .Shapes(Sheet1.Shapes.Count)
????? .Parent.Windows(1).SelectedSheets.PrintPreview
????? Shp.Delete
??? End With
??? End With
??? ActiveWindow.DisplayHeadings = True
??? Exit Sub
??? WasError:
??? MsgBox ("错误!" & vbCr & vbCr & " 请设置一个连续的打印区域。")
??? ActiveWindow.DisplayHeadings = True
??? End Sub
??? 3.关闭VBA编辑器。
??? 4.选择一个需要打印的区域,单击菜单“文件→打印区域→设置打印区域”。注意此处设置的打印区域必需为连续的区域。
??? 5.单击菜单“工具→宏→宏”,在弹出的“宏”对话框中选择上述宏命令,如“Sheet1.PrintGB”,单击“执行”按钮。
……