• DİKKAT

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

Hücre değerine göre sayfaları belirleme

xternet

Altın Üye
Katılım
12 Kasım 2004
Mesajlar
462
Excel Vers. ve Dili
2010 Tr
Merhaba arkadaşlar
Aşağıdaki kodla çalışma kitabımdaki "TUTANAK4" isimli sayfayı yazdır komutu vermiş oluyorum.

Sub yazdır_t4()

Application.ScreenUpdating = False
Sheets("TUTANAK4").PrintOut copies:=1
Application.ScreenUpdating = True

End Sub

Çalışma kitabımda TUTANAK2, TUTANAK3 ve TUTANAK4 isimli sayfalarım var. Ben duruma göre her üç sayfayıda yazdırmak için yukarıdaki kodu 3 kez uyguluyorum. Yani;

Sub yazdır_t2()

Application.ScreenUpdating = False
Sheets("TUTANAK2").PrintOut copies:=1
Application.ScreenUpdating = True

End Sub

Sub yazdır_t3()

Application.ScreenUpdating = False
Sheets("TUTANAK3]").PrintOut copies:=1
Application.ScreenUpdating = True

End Sub

Sub yazdır_t4()

Application.ScreenUpdating = False
Sheets("TUTANAK4").PrintOut copies:=1
Application.ScreenUpdating = True

End Sub

Yapmak istediğim şu arkadaşlar:
Bu üç kodu teke indirmek. Bunun içinde kodun tutanak numarasını bir hücreden alınmasını sağlamak. Mesela A1 hücresine 2,3 veya 4 değerlerinden birini yazdığımda yukarıdaki kodun teke indirilmiş hali tutanak numarasını a1 hücresinden alıcak ve ona göre ilgili sayfayı yazdıracak. Yani;

Sub yazdır_t ()

Application.ScreenUpdating = False
Sheets("TUTANAK......").PrintOut copies:=1
Application.ScreenUpdating = True

End Sub

şeklindeki kodda noktalı yer A1 hücresindeki değeri alıcak.
İlginiz için şimdiden teşekkür ederim.
İyi çalışmalar.
 
Selamlar,

Aşağıdaki kod Sayfa1 in A1 hücresindeki değere göre ilgili tutanak sayfasını yazdırır.

Kod:
Sub YAZDIR()
    Application.ScreenUpdating = False
    If Sheets("Sayfa1").Range("A1") <> "" Then Sheets("TUTANAK" & Sheets("Sayfa1").Range("A1")).PrintOut copies:=1
    Application.ScreenUpdating = True
End Sub
 
Teşekkür ederim Sayın Korhan Ayhan.
Yazdığınız kod tam istediğim gibi çalışıyor.
Zihninize sağlık.
İyi çalışmalar.
 
Merhabalar;
Belki konu biraz farklı olsa da yeni bir konu açmak yerine bu başlık altında sormayı uygun gördüm.
Sayfa5 deki Bir belgeyi yazdır dediğimde sayfalarda başlangıç sayfası 1 bitiş sayfası ise Sayfa1 deki b5 hücresinde yazanı baz alsın istiyorum. Bunu kodla nasıl yapabilirim.

Teşekkürler.
 
Güncellemek için
Günaydın

Yazdırılacak sayfanın örneğin 3 sayfa yazdıracağız sayfa1 deki b2 hücresine 3 yazarsam ilk 3 sayfayı 5 yazarsam ilk 5 sayfayı yazdırmak istiyorum.
Teşekkürler.
 
güncellemek için
 
Selamlar,
Deneyiniz:
Kod:
Sub YAZDIR()
    Application.ScreenUpdating = False
    son = [b2]
    For x = 1 To son
    If Sheets("Sayfa1").Range("b2") <> "" Then Sheets("TUTANAK" & x).PrintOut copies:=1
    Next
    Application.ScreenUpdating = True
End Sub
 
Geri
Üst