İstenen Yazıcıya göndermek

Katılım
17 Haziran 2008
Mesajlar
1,871
Excel Vers. ve Dili
Microsoft Ofis Profesyonel 2019 x64 TR
Altın Üyelik Bitiş Tarihi
26-03-2020
Merhaba arkadaşlar;

Kod:
Private Sub CommandButton2_Click()

Range("A1:E50").Select
    ActiveSheet.PageSetup.PrintArea = "$A$1:$P$108"
    ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
        IgnorePrintAreas:=False
        ActiveSheet.PageSetup.PrintArea = ""
        Range("A4").Select
   
        
End Sub
bu kod ile otomatik yazdırma yapıyorum. Fakat sistemdeki default yazıcı hangisi ise ona gönderiyor..

Amacım : Belirlediğim yazıcıya göndermesi...

yardımcı arkadaşa şimdiden teşekkürler..
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,997
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Deneyiniz.

Kod:
Option Explicit

Sub Yazdir()
    Dim Aktif_Yazici As String, Yazici As Variant
    
    Aktif_Yazici = Application.ActivePrinter
    Yazici = Application.Dialogs(xlDialogPrinterSetup).Show
    If Yazici = False Then Exit Sub
    ActiveSheet.PageSetup.PrintArea = "$A$1:$P$108"
    ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False
    ActiveSheet.PageSetup.PrintArea = ""    
    Application.ActivePrinter = Aktif_Yazici
End Sub
 

cems

Altın Üye
Katılım
2 Eylül 2005
Mesajlar
2,568
Excel Vers. ve Dili
office 2010 tr 32bit
Altın Üyelik Bitiş Tarihi
13-06-2029
Merhaba hocam.; Soruyu sormadan önce bu verdiğiniz linki incelemiştim. ama gerekli kodları orada bulamadım.
Print almak için ya bir yol gösterip bundan bas demek ( sayın Yeşertener'in önerisi bunu anlatıyor ) ya da diyalog açıp el ile seçmek gerekiyor. Bu olunca da doğru basımdan emin olmak için preview açmak daha mantıklı olabilir, burada ayar ve printer seçimi yapılabilir.



Kod:
Sheets("Sheet 1").Activate
ActiveWindow.SelectedSheets.PrintOut Preview:=True
Sheets("Sheet 1").Select
End Sub
Sayfa adını siz değiştirin.
 
Katılım
17 Haziran 2008
Mesajlar
1,871
Excel Vers. ve Dili
Microsoft Ofis Profesyonel 2019 x64 TR
Altın Üyelik Bitiş Tarihi
26-03-2020
Korhan hocam; bu kodlama işime yarayacak gibi duruyor..;

yalnız;

Kod:
Range("A1:E50").Select
    ActiveSheet.PageSetup.PrintArea = "$A$1:$E$50"
bu kodları dahil edebilirmiyiz.. sayfa yapısıda yatay olacak.

Teşekkür ediyorum.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,997
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Üstteki mesajımdaki kodu güncelledim. Deneyiniz.
 
Katılım
17 Haziran 2008
Mesajlar
1,871
Excel Vers. ve Dili
Microsoft Ofis Profesyonel 2019 x64 TR
Altın Üyelik Bitiş Tarihi
26-03-2020
Korhan Ayhan

Hocam çok teşekkür ediyorum tamamdır..
 
Üst