Öncelikle belirteyim, kodlara hakim olmadan böyle bir yapı oluşturduğunuz için sizi tebrike etmek lazım.
BeforePrint olayını kullanmadan sizin daha önce belirlediğiniz SurYaz kodu sonuna MailGonder başlığını ekledim. Tabii ki MailGonder kodunu module ekleminiz gerekmektedir.
Sub SuzYaz()...
...YAZDIR butonuna tıklayın, daha sonra bir yazıcı seçin (ben önce PDF ile denedim) yazdır deyin. Makroyu durdurun.
Sub Makro1()
Application.ActivePrinter = "Ne01: üzerindeki Microsoft Print to PDF "
ExecuteExcel4Macro "PRINT(1,,,1,,,,,,,,2,,,TRUE,,FALSE)"
End Sub
verdiği kod bu...
...kaydet dedikten sonra yazdırma menüsünden istediğiniz yazıcıyı seçtiğinizde aşağıdakine benzer biçimde kodunuz oluşacaktır. Bu kodu kendi kodunuzda yer alan yazdırma kodunun öncesine ilave edebilirsiniz.
Örnek kod:
Application.ActivePrinter = "Ne00: üzerindeki ZDesigner ZD420-203dpi ZPL (Copy...
paylaşılan yazıcıyı aktif yazıcı olarak seçip şu kodu çalıştırn. (msgbox Application.ActivePrinter)
sonuca görede şu kodda gerekli değişikliği yapın
Application.ActivePrinter = "\\PC1\XEROX on NeXX:"
...Satir As Long
Dim Gorev_Yoneticisi As Object, Uygulamalar As Variant, Uygulama As Object
Tanimli_Printer = Application.ActivePrinter
Printer_Secimi = Application.Dialogs(xlDialogPrinterSetup).Show
If Printer_Secimi = False Then Exit Sub...
@Korhan Ayhan Bey,
SAYFAYI YAZDIR butonuna tıklayınca satırları gizliyor ama GEÇERLİ TARİHTEKİ verileri üstteki verilerin altında hepsini yazmasını istiyorum. Aşağıdaki hataları veriyor. Yardım eder misiniz
ilginiz için çok teşekkür ederim. Cihaza bağlı 3 adet yazıcı bulunmakta. Bu işlem için kullanacağım yazıcı Samsung SCX-4x21 Series (USB003). Kod bölümündeki printer_name = "Ne00: üzerindeki Zebra TLP2844 " bu satırı printer_name = "Ne00: üzerindeki Samsung SCX-4x21 Series (USB003) " olarak...
...yazıp kendi excelimde denedim. Selamlar.. Başarılar...
Sub YAZICI_SEC()
Dim STDprinter As String
STDprinter = Application.ActivePrinter
On Error GoTo hata1
Application.ActivePrinter = "Ne00: üzerindeki ZARF " ' On Error GoTo hata1 kodu olası zararlar karşısında...
...dönse. Bu şekilde bir işlem mümkün müdür.
Kullandığım kodlar.
Sub YAZICI_SEC()
Dim STDprinter As String
STDprinter = Application.ActivePrinterApplication.ActivePrinter = "Ne00: üzerindeki ZARF " 'Yeni bir yazıcı tanımlanırsa ya da port eklenirse Ne00 numarası değişebiliyor ve bu da...
Konuya dahil oldunuz ama, öneriniz zaten yukarıdaki mesajlardan farklı değil......
Söz konusu yazıcı adının "Zebra TLP2844 on Ne01:" falan gibi bir şey olması lazım....... @mc_exrem 'e bunu buldurmaya çalışıyorum ama şimdilik bir cevap yok.
.
Sub Test()
Dim myPrinter As String
Dim printer_name As String
myPrinter = Application.ActivePrinter
[P1] = myPrinter
end sub
Öncelikle çıktı almak istediğiniz yazıcıyı manuel olarak varsayılan seçin. Yukarıdaki kodu çalıştırdığınızda yazıcının adını P1 hücresine yazacaktır...
Cevabınız için teşekkür ederim.
başaralı olmadı, yazıcı yönteminde sanal PDF sürücüsü her seferinde onay istiyor. bu bir sorun oluşturdu.
farklı kaydet ile PDF formatında kaydedebilirmiyiz acaba, sayfanın adıyla kaydetmem gerekiyor
Kitap1 adıyla bir dosya ekledim basit ve içinde makrosu bulunan
...aşağıdaki kodu yerleştirip bir deneme yapabilirsiniz. Koddaki yazıcı ismini (Adobe PDF on Ne04:) kendi sisteminize göre değiştirmeyi unutmayın.
Application.ActivePrinter = "Adobe PDF on Ne04:"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:="Adobe PDF on Ne04:", collate:=True
.
...seçiyorum ve VERİLER sayfasında D31 hücrei ile D32 hücresine yazıcı isimlerini yazdırıyorum. Sonra başka makrolarda
Application.ActivePrinter = Sheets("VERİLER").Cells(32, 4)
komutu ile Oval1_Tıklat makrosu ile yazdığım yazıcıları aktif printer haline getirerek sayfamı seçtiğim aktif...
Sizlere daha iyi bir deneyim sunabilmek icin sitemizde çerez konumlandırmaktayız, web sitemizi kullanmaya devam ettiğinizde çerezler ile toplanan kişisel verileriniz Veri Politikamız / Bilgilendirmelerimizde belirtilen amaçlar ve yöntemlerle mevzuatına uygun olarak kullanılacaktır.