Imprimante par defaut

jpaul625

XLDnaute Junior
Bonjour a vous tous
Je m'explique,j'ai trois imprimantes donc une que j'ai nommer Mfc c'est une brother laser.
Dans ma feuille xl j'imprime avec une autre imprimante Brother 2240
Alors l'imprimante Brother 2240 deviens par défaut.Je voudrais que après l'impression l'imprimante par défaut retourne a l'imprimante Mfc
Voici mon macro
Merci
Private Sub CommandButton2_Click()

Application.ActivePrinter = "Brother HL-2240 series sur Ne02:"
ExecuteExcel4Macro _
"PRINT(1,,,2,,,,,,,,2,""Brother HL-2240 series sur Ne01:"",,TRUE,,FALSE)"
Application.ActivePrinter = "MFC sur Ne00:"
Dim fichier As String
fichier = "D:\Nettoyeur\No de facture\Bon de livraison\" & [ba6].Value & "_" & [e26].Value
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=fichier, _
Quality:=xlQualityStandard, IncludeDocProperties:=True, _
ignorePrintAreas:=False, OpenAfterPublish:=False
Sheets("no").Select
ActiveWorkbook.Close False

End Sub
 

Lone-wolf

XLDnaute Barbatruc
Re : Imprimante par defaut

Bonjour jpaul,

Un essai avec cette macro

Code:
Dim imprimante(1 To 2) As String
Sub test()

imprimante1 = "Brother HL-2240 series sur Ne02:"
imprimante2 = "MFC sur Ne00:"

If ActivePrinter = imprimante1 Then
ActivePrinter = imprimante2
Else
ActivePrinter = imprimante1
End If
End Sub


A+ :cool:
 
Dernière édition:

Roland_M

XLDnaute Barbatruc
Re : Imprimante par defaut

bonsoir,

essayer !?

'save imprimante en cours
stPrinter$ = Application.ActivePrinter
'select une imprimante avec la boite de dialogue
Application.Dialogs(Excel.XlBuiltInDialog.xlDialogPrinterSetup).Show
'suite code ...
' . . .
'remet l'imprimante par defaut
Application.ActivePrinter = stPrinter


EDIT: attention le texte ne colle pas correctement !?
ici ça fais un espace entre xlDialogPrinter et PrinterSetup qui n'existe pas !
(Excel.XlBuiltInDialog.xlDialogPrinterSetup)


j'ai mis dans ton code qui est à revoir car tu as deux anomalies !
1' Sheets("no").Select alors que No n'est pas initialisé !?
2' il faut revoir ici> series sur Ne02: et ensuite series sur Ne01:
ici: "Brother HL-2240 series sur Ne02:"
et ensuite: PRINT(1,,,2,,,,,,,,2,""Brother HL-2240 series sur Ne01:

j'ai corrigé avec 02 ! à toi de voir !?

Code:
Private Sub CommandButton2_Click()
'save imprimante en cours
stPrinter$ = Application.ActivePrinter

'init l'imrimante désirée
Application.ActivePrinter = "Brother HL-2240 series sur Ne02:"
'...
ExecuteExcel4Macro "PRINT(1,,,2,,,,,,,,2,""Brother HL-2240 series sur Ne02:"",,TRUE,,FALSE)"
'
Dim fichier As String
fichier = "D:\Nettoyeur\No de facture\Bon de livraison\" & [ba6].Value & "_" & [e26].Value
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=fichier, _
            Quality:=xlQualityStandard, IncludeDocProperties:=True, _
            ignorePrintAreas:=False, OpenAfterPublish:=False


' Sheets("no").Select '<<<<<<<< !? c'est quoi No !? il va y avoir un plantage !
'remet l'imprimante par defaut
Application.ActivePrinter = stPrinter
ActiveWorkbook.Close False
End Sub


'save imprimante en cours
stPrinter$ = Application.ActivePrinter
'select une imprimante avec la boite de dialogue
Application.Dialogs(Excel.XlBuiltInDialog.xlDialogPrinterSetup).Show
'suite code ...
' . . .
'remet l'imprimante par defaut
Application.ActivePrinter = stPrinter
 
Dernière édition:

Statistiques des forums

Discussions
312 322
Messages
2 087 278
Membres
103 507
dernier inscrit
tapis23