• DİKKAT

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

makroda yazdır komutunda düzeltme yapılabilir mi

Katılım
10 Mayıs 2011
Mesajlar
55
Excel Vers. ve Dili
excel 2016
merhabalar,

ekte dosyamda "BİLGİ GİRİŞ ALANI" sekmesinde "YAZDIR" butonuna basılınca dosya içinde yer alan sarı renkli sekmelerden çıktı alıyorum,

yine aynı sayfada hangi sayfadan kaç adet çıktı alınacağı ile ilgili alan mevcut(B53),
bazı kullanıcılar bazı sayfalardan hiç çıktı almayacağı için bu hücrelerdeki değerleri siliyor ya da sıfır rakamını giriyor, bunu yazınca da resimdeki hata çıkıyor,

sıfır rakamı girilince o sayfadan çıktı alınmamasını ve hata vermemesini nasıl sağlayabiliriz,

yardımcı olabilir misiniz?
 

Ekli dosyalar

  • KART YENİ_vx.xls
    KART YENİ_vx.xls
    854.5 KB · Görüntüleme: 2
  • hata.jpg
    hata.jpg
    39.3 KB · Görüntüleme: 1
Merhaba koddaki örneğinaşağıdaki siyah satırı silip yerine kırmızı olanı yazarak dener misiniz.
Diğer satırlar için de benzer işlem yapınız, GoTo 10 ve alttaki 10 yerine her bir satır için başka sayı kullanmayı unutmayın.
Kod:
[SIZE="2"]Sheets(yazdir1).PrintOut Copies:=Sheets("BİLGİ GİRİŞİ ALANI").Cells(57, 7)
[COLOR="Red"]If Sheets("BİLGİ GİRİŞİ ALANI").Cells(57, 7) = 0 Then GoTo 10
    Sheets(yazdir1).PrintOut Copies:=Sheets("BİLGİ GİRİŞİ ALANI").Cells(57, 7)
10[/COLOR][/SIZE]
Kodların en sonuna END SUB satırından önce aşağıdaki satırı da ekleyin ki, bilgi giriş sayfanız önde kalsın.
Kod:
Sheets("BİLGİ GİRİŞİ ALANI").Activate
 
Son düzenleme:
bu konuda eksiğim olduğu için sormam gerekiyor,

GoTo 10 ve alttaki 10 rakamı neyi ifade ediyor, hangi rakamları temsil ediyor, bunu anlayamadım, kusuruma bakmayın, bilgim yok :(
 
tamam anladım, sanırım, aşağıdaki gibi yaptım, oldu galiba :) :) :)

Sub yazdır()

Dim ts, kaplan

yazdir1 = "EK-8_BİLGİ FORMU"
yazdir2 = "EK-1_NAKİL BEYANNAMESİ"
yazdir3 = "EK-1_KLİNİK TARAMA FORMU"
yazdir4 = "EK-4_KÜMES AŞILAMA"
yazdir5 = "KUŞ GRİBİ FORMU"
yazdir6 = "EK-6 İLAÇ KAYIT BELGESİ"

If Sheets("BİLGİ GİRİŞİ ALANI").Cells(57, 7) = 0 Then GoTo 10
Sheets(yazdir1).PrintOut Copies:=Sheets("BİLGİ GİRİŞİ ALANI").Cells(57, 7)
10
If Sheets("BİLGİ GİRİŞİ ALANI").Cells(61, 7) = 0 Then GoTo 11
Sheets(yazdir2).PrintOut Copies:=Sheets("BİLGİ GİRİŞİ ALANI").Cells(61, 7)
11
If Sheets("BİLGİ GİRİŞİ ALANI").Cells(65, 7) = 0 Then GoTo 12
Sheets(yazdir3).PrintOut Copies:=Sheets("BİLGİ GİRİŞİ ALANI").Cells(65, 7)
12
If Sheets("BİLGİ GİRİŞİ ALANI").Cells(69, 7) = 0 Then GoTo 13
Sheets(yazdir4).PrintOut Copies:=Sheets("BİLGİ GİRİŞİ ALANI").Cells(69, 7)
13
If Sheets("BİLGİ GİRİŞİ ALANI").Cells(73, 7) = 0 Then GoTo 14
Sheets(yazdir5).PrintOut Copies:=Sheets("BİLGİ GİRİŞİ ALANI").Cells(73, 7)
14
If Sheets("BİLGİ GİRİŞİ ALANI").Cells(77, 7) = 0 Then GoTo 15
Sheets(yazdir6).PrintOut Copies:=Sheets("BİLGİ GİRİŞİ ALANI").Cells(77, 7)
15



Sheets("BİLGİ GİRİŞİ ALANI").Activate

End Sub
 
Koşul sağlandığında yani hücre boş veya 0 ise kod'un bir sonraki satır yerine karşısına yazdığınız numaralı satıra atlamasını sağlıyor.
Sorun kalmamış olması lazım.

Bu arada açtığınız diğer konuya cevap yazmadınız ama bu konudaki belgede uyguladığınızı gördüğüme göre diğer konu çözüldü anlaşılan.
 
evet, teşekkür ediyorum yardımlarınız için, çok güzel oldu, çok sağolun bilgileriniz için :)
 
evet, teşekkür ediyorum yardımlarınız için, çok güzel oldu, çok sağolun bilgileriniz için :)

Estağfurullah, BİLMEK kelimesi fazla iddialı olur, yaparak öğreniyoruz diyelim.

İhtiyaç görüldüğüne göre mesele yok iyi günler dilerim.
 
Geri
Üst