Sub listeImprimantes_et_Statut()
'testé avec Excel2002 et WinXP
Dim objWMIService As Object, colInstalledPrinters As Object, objPrinter As Object
Dim nomPC As String, Resultat As String
nomPC = '.'
Set objWMIService = GetObject('winmgmts:' & _
'{impersonationLevel=impersonate}!\\\\' & nomPC & '\\root\\cimv2')
Set colInstalledPrinters = objWMIService.execQuery('Select * from Win32_Printer')
For Each objPrinter In colInstalledPrinters
Resultat = Resultat & objPrinter.Name & ' imprimante active : ' & objPrinter.Default & vbLf
Next
MsgBox Resultat
End Sub