Поделиться через


Получение списка установленных принтеров

Чтобы вернуть коллекцию Printers, используйте свойство Printers объекта Application.

В описанной ниже процедуре показано, как просмотреть каждый объект Printer в коллекции Printers с помощью оператора For Each…Next. Отображается окно сообщения со сведениями о каждом установленном принтере.

Sub ShowPrinters() 
    Dim strCount As String 
    Dim strMsg As String 
    Dim prtLoop As Printer 
     
    On Error GoTo ShowPrinters_Err 
 
    If Printers.Count > 0 Then 
        ' Get count of installed printers. 
        strMsg = "Printers installed: " & Printers.Count & vbCrLf & vbCrLf 
     
        ' Enumerate printer system properties. 
        For Each prtLoop In Application.Printers 
            With prtLoop 
                strMsg = strMsg _ 
                    & "Device name: " & .DeviceName & vbCrLf _ 
                    & "Driver name: " & .DriverName & vbCrLf _ 
                    & "Port: " & .Port & vbCrLf & vbCrLf 
            End With 
        Next prtLoop 
     
    Else 
        strMsg = "No printers are installed." 
    End If 
     
    ' Display printer information. 
    MsgBox Prompt:=strMsg, Buttons:=vbOKOnly, Title:="Installed Printers" 
     
ShowPrinters_End: 
    Exit Sub 
     
ShowPrinters_Err: 
    MsgBox Prompt:=Err.Description, Buttons:=vbCritical & vbOKOnly, _ 
        Title:="Error Number " & Err.Number & " Occurred" 
    Resume ShowPrinters_End 
     
End Sub

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.