我希望创建一个基本上可以像这样运行的模块:
- 定义 4 或 5 个打印范围;
- 提示用户输入框;
- 允许用户从该输入框中的下拉列表中选择他们希望打印的范围;
- 选择范围后,他们点击确定,并提示“您确定吗?” 框以防止误点击。
我对此相当迷茫,老实说,我觉得我一直在编写的代码将比仅仅阐明问题的帮助少。
我已经让用户定义范围(手动选择他们希望打印的列)来工作,但这不是我想要的。
更进一步,是否可以进一步自定义打印格式(横向与纵向和纸张类型)?
非常感谢您提前提供的帮助,我会尽力回答问题并提供我上面引用的代码示例(只是一个允许您选择列的提示。我需要它是一个定义的范围,按名称,range1=a2:c14
或类似的东西,因为最终用户不是优秀的 excel 用户。
见下文:
Sub SelectPrintArea()
Dim PrintThis As Range
ActiveSheet.PageSetup.PrintArea = ""
Set PrintThis = Application.InputBox _
(Prompt:="Select the Print Range", Title:="Select", Type:=8)
PrintThis.Select
Selection.Name = "NewPrint"
ActiveSheet.PageSetup.PrintArea = "NewPrint"
ActiveSheet.PrintPreview
End Sub
作为后续:
假设文档有隐藏部分,如果这些部分是用户定义范围的一部分(比如它是分组的一部分),是否能够取消隐藏这些部分。这适用于受保护的文档吗?