|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
本帖最后由 我本想英俊 于 2017-8-3 22:54 编辑
Function NameExist(sName As String) As Boolean '判断定义名称是否存在函数
Dim NameCount As Integer
NameExist = False
For NameCount = 1 To Workbooks(1).Names.Count
If Workbooks(1).Names(NameCount).NameLocal = sName Then
NameExist = True
Exit Function
End If
Next
End Function
Sub 设置针式打印机()
Dim n As Boolean, dyj As String
n = Application.Dialogs(xlDialogPrinterSetup).Show '调用打印机设置
If n = True Then
dyj = Application.ActivePrinter
ActiveWorkbook.Names.Add Name:="针式打印机", RefersTo:=dyj '写入名称
End If
End Sub
Private Sub CommandButton1_Click()
Dim 默认打印机 As String
默认打印机 = Application.ActivePrinter '将默认打印机暂时保存起来
If Not NameExist("针式打印机") Then Call 设置针式打印机 '判断是否有打印机名称定义存在,如没有调用打印机设置
Application.ActivePrinter = Evaluate(ActiveWorkbook.Names("针式打印机").Value) '针打印机
With ActiveSheet.PageSetup
' .PaperSize = 135 '135 =8.3X6IN设置打印纸尺寸
.PrintErrors = xlPrintErrorsDisplayed
End With
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Application.ActivePrinter = 默认打印机 '返还默认打印机设置
End Sub
我这将楼主的改了下,可以选定一个打印机,打完切回默认打印机.如果只用一台打印机也不用再改.现在就差一样自定义纸张尺寸用什么命令调出来?实际上不同单不定个纸张尺寸还要预览再选纸张尺寸很麻烦. |
评分
-
1
查看全部评分
-
|