• DİKKAT

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

çıktı almak

Katılım
31 Ocak 2006
Mesajlar
83
Diyelim ki personele veya öğrencilere ait çok sayıdaki veriyi belirli bir formatta tablolayıp çıktı almamız lazım. Eldeki verileri Düşeyara İşlevini kullanarak istediğimiz tabloya aktarabiliyoruz.

Ancak ;

Veriler tek tek çağrıldığı için yazıcı çıktısı alırken onlarca çıktıyı tek tek almak durumunda kalıyoruz.

Sorum Şu;

Örneğin Excel’de hazırladığımız sınav giriş belgesinden 600 öğrenciye cıktı vermek icap ettiğini varsayalım hazır programlarda olduğu gibi bir defada yazdır diyerek tüm öğrenciler için çıktı alınabilir mi.
 
hamitcan hocam teşekkür ediyorum cevap yazdığınız için.

hocam ben forumda aradım ancak, bu hususa ilişkin açılmış bi başlık bulamadım

ben atlamışta olabilirim. eğer bu hususta bir konu varsa linkini verebilirsiniz.

şayet yoksa da bu konu hakkında biraz malumat verebilirseniz sevinirim.

bu konu epeydir aklımı meşgul ediyor.

düşeyara işlevini yeni öğrendim, birde bunu öğrenirsem ileride çok işime yarıyacak. yani şuan elimde içinden çıkamadığım bir iş yok ancak bu konuyu çok merak ediyorum ve dediğim gibi ileride çok lazım olucağı kanaatindeyim.

Alakanıza Şimdiden teşekkür ediyorum
 
Küçük bir dosya hazırlayın. Örnek üzerinden gitmek daha iyi.
 
merhaba

aşağıdaki kodları bir butona atayarak dener misiniz


Kod:
Sub yaz()
say = Sheets("Sayfa2").Range("B65536").End(xlUp).Row
For i = 2 To say
Sheets("Sayfa3").Range("h3") = Sheets("Sayfa2").Range("b" & i)
ActiveSheet.PrintOut
Next
End Sub
 
Hocam Teşekkür ediyorum bu süper bişey, işe yaradı hepsini toplam 54 sayfayı otamatik yazdırıyor.

Müsadenizle ben bir şey daha soracağım. bu kodu başka bir çalışmaya uyarlarken;

("Sayfa2") - ("Sayfa3") - ("h3")

sadece bu ifadeleri mi değiştireceğiz, yoksa başka değiştirmemiz gereken yerler varmı?
 
merhaba
öncelikle listenizi soyadı temeline oturtmayın, aynı soyad birden fazla varsa hata yaparsınız. sicil no gibi kriter kullanınız.

"say = Sheets("Sayfa2").Range("B65536").End(xlUp).Row" 2. sayfanın B sütununun son dolu hücresine kadar say. (sizinki sayfa2 b sütununda)

"For i = 2 To say" 2 den say'a kadar döndür (sizinki 2. satırdan başlıyor.)

"Sheets("Sayfa3").Range("h3") = Sheets("Sayfa2").Range("b" & i)" 3.sayfanın h3 hücresine 2.sayfadaki b2 den sona kadar sıra ile yaz ve çıktı al.
kırmızı ile yazılanları çalışmanıza uyarlayınız.
 
Öneriniz ve izahatlarınız için teşekkür ederim. ancak anlamadığım buradaki -İ-

= Sheets("Sayfa2").Range("b" & ?İ?)" sabit mi yoksa değişken mi olacak
 
merhaba
"For i = 2 To say"
burada "i" değişkenini 2'den B sütunun son satır nosuna kadar döndürüyoruz.
2,3,4... diye gidiyor.
"Sheets("Sayfa2").Range("b" & i)"
burada 2.sayfanın, B2, B3, B4... diye B sütunundaki hücre değerlerini alıyoruz.
 
Listeyi Toplu Yazdırma

Ekteki dosyadan, List sayfasından, Tebrik sayfasında Q1 den çekerek topluca 155 sayfayı yazdırmak istiyorum. Yardımcı olur musunuz
 

Ekli dosyalar

Ekteki dosyadan, List sayfasından, Tebrik sayfasında Q1 den çekerek topluca 155 sayfayı yazdırmak istiyorum. Yardımcı olur musunuz
Merhaba
Kod:
Sub yaz()
say = Sheets("List").Range("a65536").End(xlUp).Row
For i = 2 To say
Sheets("Tebrik").Range("u1") = Sheets("List").Range("A" & i)
ActiveSheet.PrintOut
Next
End Sub
Mrvcut kodunuzu bu şekilde deneyin

Düzenleme: Dosyanızın hesaplama ELLE görünüyor OTOMATİK olarak değiştiriniz. Yoksa düşeyara ile buldurmak istediğiniz isimler F9 yapmadan gelmez.
Dolayısıyla makro ile 155 kayıtı yazdıramazsıınz.
 
Son düzenleme:
Black Lord,
otomatik ve elle kısmı neresinde, bu kısmı anlamadım. nereyi otomatik yapmam lazım. klavye bozuk olduğundan güçlükle yazıyorum. cevap için teşekkür ederim.
 
Black Lord,
otomatik ve elle kısmı neresinde, bu kısmı anlamadım. nereyi otomatik yapmam lazım. klavye bozuk olduğundan güçlükle yazıyorum. cevap için teşekkür ederim.
yolladığınız dosyan 2007 ama versiyon dilinizde 2003 yazıyor
2007 için; Sol Üstte Offis Düğmesi / Excel Seçenekleri / formüller / otomatik
2003 İçin; Araçlar / Seçenekler / Hesaplama / Otomatik
Bu işlemi yaptıktan sonra yukarıda verilen kod toplu çokyı almanızı sağlayacaltır.
 
Merhaba Bu kod işini görecektir.
Kod:
Sub yaz()
say = Sheets("List").Range("a65536").End(xlUp).Row
For i = 2 To say
Sheets("Tebrik").Range("u1") = Sheets("List").Range("A" & i)
ActiveSheet.PrintOut
Next
End Sub
 
Son düzenleme:
Listeyi Toplu Yazdırma

black lord,
çok teşekkür ederim. toplu listeyi yazdırdım. sorun halloldu. cevap verme nezaketi gösterdiğin için teşekkür ederim.
 
Blacklord yardımların için teşekkür ederim. Bu yazdırmayı belli satırdan sonra başlatmak için nasıl bi düzenleme yapmam lazım. Bazan yazıcı duruyor, kağıt sıkışıyor.
 
Son düzenleme:
Geri
Üst