• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Yazdır butonuna print sayısı girme

Katılım
10 Ocak 2011
Mesajlar
21
Excel Vers. ve Dili
2003
İng ve Türkçe
Merhaba siz değerli arkadaşlar sayesinde epey bir aşama kaydettiğim çalışma kitabımda aşagıdakine benzeyen onlarca makro kullanıyorum.Makroyu butana atadım.Çalışıyor.Ama bir sayfa yazdırma alanını yazdırdıktan sonra tekrar bastığımda tüm sayfayı yazdırıyor.
Acaba makroyu çalıştırdıktan sonra açılan Msg box'a kaç adet yazdırmak istediğim kutucuk yapılabilir mi?
Olursa nasıl.
Yardımlarınız için şimdiden teşekkürler.

Sub galileo_etiket_yazdir()
If MsgBox("12.0201 GALILEO ETIKET SAYFASI''ni yazdirmak istiyor musunuz?", vbYesNo, "BATCH RAPORU") = vbNo Then Exit Sub
Sheets("12.0201 GALILEO ETIKET").PrintOut , 1
Sheets("12.0201 GALILEO ETIKET").PageSetup.PrintArea = ""
End Sub
 
Merhaba,

Kod:
Sheets("12.0201 GALILEO ETIKET").PageSetup.PrintArea = ""
satırı yazdırma alanını sıfırlıyor. Bu satırı silin.

Evde yazıcı olmadığı için deneyemedim, siz deneyiniz.

Kod:
Dim SayfaAdedi As Integer
 
SayfaAdedi = Application.InputBox("Kaç Sayfa İstiyorsunuz?", "Sayfa adedi...", 1, Type:=1)
If SayfaAdedi = 0 Then Exit Sub
 
Sheets(("12.0201 GALILEO ETIKET").PrintOut , Copies:=SayfaAdedi
 
Merhaba,

Kod:
Sheets("12.0201 GALILEO ETIKET").PageSetup.PrintArea = ""
satırı yazdırma alanını sıfırlıyor. Bu satırı silin.

Evde yazıcı olmadığı için deneyemedim, siz deneyiniz.

Kod:
Dim SayfaAdedi As Integer
 
SayfaAdedi = Application.InputBox("Kaç Sayfa İstiyorsunuz?", "Sayfa adedi...", 1, Type:=1)
If SayfaAdedi = 0 Then Exit Sub
 
Sheets(("12.0201 GALILEO ETIKET").PrintOut , Copies:=SayfaAdedi

Necdet Hocam yine yetiştiniz imdadıma.Teşekkür ederim.
Kodu yerleştirdim.Çalıştırdım.
Ama kullanım işlemi biraz uzadı gibime geldi.Ben de ilk msg box'ı sildim.Fakat Şimdi de yazıcıdan tüm sayfa çıkıyor (kod içeriğinde ''PrintArea'' ifadesi olmaması olabilir mi? )
Kullandığım kod:

Sub galileo_etiket_yazdir()
Dim SayfaAdedi As Integer
SayfaAdedi = Application.InputBox("Her Sayfada 12 Etiket Var,Kaç Sayfa İstiyorsunuz?", "ETİKET SAYFASI BASILACAK...", 1, Type:=1)
If SayfaAdedi = 0 Then Exit Sub
Sheets("12.0201 GALILEO ETIKET").PrintOut , 1
End Sub



Bu kodu her sayfa adı ve yazdırma alanlarınana göre düzenleyeceğim,yeni kodun ana yapısı hariç onlarca değişik butona tanıtarak yeniden düzenlemem gerekecek.
 
Necdet Hocam yine yetiştiniz imdadıma.Teşekkür ederim.
Kodu yerleştirdim.Çalıştırdım.
Ama kullanım işlemi biraz uzadı gibime geldi.Ben de ilk msg box'ı sildim.Fakat Şimdi de yazıcıdan tüm sayfa çıkıyor (kod içeriğinde ''PrintArea'' ifadesi olmaması olabilir mi? )
Kullandığım kod:

Sub galileo_etiket_yazdir()
Dim SayfaAdedi As Integer
SayfaAdedi = Application.InputBox("Her Sayfada 12 Etiket Var,Kaç Sayfa İstiyorsunuz?", "ETİKET SAYFASI BASILACAK...", 1, Type:=1)
If SayfaAdedi = 0 Then Exit Sub
Sheets("12.0201 GALILEO ETIKET").PrintOut , 1
End Sub



Bu kodu her sayfa adı ve yazdırma alanlarınana göre düzenleyeceğim,yeni kodun ana yapısı hariç onlarca değişik butona tanıtarak yeniden düzenlemem gerekecek.

Necdet Hocam;
Evde yazıcı olmadığı için ancak bugün fiziksel olarak yazıcı ile denedim.
Üst mesajdaki sorun ile birlikte,yazdırma adedine 1'den yüksek rakam girsem dahi bana sadece 1 sayfa yazdırıyor.
Kodda biraz değişiklikler yaptım ama sonuç aynı.Ne yapabiliriz?
 
Merhaba;

Çözüm Necdet bey tarafından verilmiş.
Sanırım ;
Sheets(("12.0201 GALILEO ETIKET").PrintOut , Copies:=SayfaAdedi
satırını uygulamamışsınız.

İyi çalışmalar.
 
Merhaba;

Çözüm Necdet bey tarafından verilmiş.
Sanırım ;
Sheets(("12.0201 GALILEO ETIKET").PrintOut , Copies:=SayfaAdedi
satırını uygulamamışsınız.

İyi çalışmalar.

Uygun Üstad;
Yanıt için teşekkür ederim.Evet cevap uzakta değilmiş,sadece benim uygulamamda gözden kaçan nokta varmış.
Şu an problem yok.Çalışıyor.
Sizin değerli katkılarınızla güzel bir çalışma kitabım olacak.
Altın değerindeki öğretileriniz için çok teşekkür ederim.
 
Geri
Üst