• DİKKAT

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

Çoklu veli izin belgesi

Hakan ERDOST

Destek Ekibi
Destek Ekibi
Katılım
12 Eylül 2004
Mesajlar
885
Excel Vers. ve Dili
Excel 2019 Türkçe (Ev)
Excel 2013 Türkçe (Okul)
Okullarda düzenlediğimiz gezilerde kullandığımız veli izin belgelerinin kodlanmasını istiyorum ancak bunu tek tek değilde veri-tabanından tüm öğrenciler için düzenlemek istiyorum açıklama dosyada veli_izin sayfasında mevcut. Herkese kolay gelsin.
 

Ekli dosyalar

Okullarda düzenlediğimiz gezilerde kullandığımız veli izin belgelerinin kodlanmasını istiyorum ancak bunu tek tek değilde veri-tabanından tüm öğrenciler için düzenlemek istiyorum açıklama dosyada veli_izin sayfasında mevcut. Herkese kolay gelsin.

Ekli dosyayı inceleyemedim. Ancak word şablonuna excel deki listeyi kullanarak formlar doldurmayı aşağıdaki konu ile yapabilir siniz.

http://www.excel.web.tr/f52/excel-otomatik-form-doldurma-ve-gonderme-programy-t160449.html
 
Döngü ile mümkün değil mi arkadaşlar?
 
Eğer sonuçta çıktı alacaksanız birer birer alsınız olmazmı?
 
Eğer sonuçta çıktı alacaksanız birer birer alsınız olmazmı?
:) elbette olur. Ancak 35 kişi için 35 a4 harrcamak yerine 12 a4 ile sorunu halledebiliriz diye düşündüm sayın vardar07. Ben döngüyü metin olarak ifade edeyim belki kodlayan çıkar. Şöyle ki Veri sayfasındaki ikinci dolu satırdan başlayarak,
2.Satırın 3. sütunundaki veriyi, veli_izin sayfasındaki A4 ve B8 hücrelerine;
2.satırın 5.sütunundaki veriyi veli_izin sayfasındaki F9 hücresine;
2.Satrırın 8.sütunundaki veriyi veli_izin sayfasındaki B9 hücresine;
2.satırın 2.sütunundaki veriyi veli_izin sayfasındaki B10 hücresine aktarıp,
2.satır için döngü 49. kolonda tamamlanıp 3.satıra geçip satır-sütun değerlerini +18 ile tekrar veli izin sayfasına aktaracak ve veri sayfasındaki ilk boş satırda makro durup aktarım tamamlandı diyecek.
 
Dosyayı dosya.tc yada dosya.co ile paylaşabilir misiniz?
 
Aşağıdaki şekilde deneyiniz.
Hem yazıcıya gönderir. Hemde aynı klasöre pdf oluştur.

Yazıcı ayarlarında sayfayı dikey sığdır yapınız.


Kod:
Sub veli_izin()
   Set shveri = Sheets("VERİ")
   Set shizin = Sheets("VELİ_İZİN")
   verisonsatir = shveri.Cells(Rows.Count, "B").End(3).Row
   say1 = 0
   For j = 1 To 3
     shizin.Cells(say1 + 4, "A").Value = ""
     shizin.Cells(say1 + 8, "B").Value = ""
     shizin.Cells(say1 + 9, "B").Value = ""
     shizin.Cells(say1 + 9, "F").Value = ""
     shizin.Cells(say1 + 10, "B").Value = ""
     say1 = say1 + 17
   Next j
   
   say = 0
   For i = 2 To verisonsatir
     
     adisoyadi = shveri.Cells(i, "C").Value
     sinifsube = shveri.Cells(i, "H").Value
     okulno = shveri.Cells(i, "B").Value
     velisi = shveri.Cells(i, "E").Value
     
     shizin.Cells(say + 4, "A").Value = adisoyadi
     shizin.Cells(say + 8, "B").Value = adisoyadi
     shizin.Cells(say + 9, "B").Value = sinifsube
     shizin.Cells(say + 9, "F").Value = velisi
     shizin.Cells(say + 10, "B").Value = okulno
     say = say + 17
     okulnolar = okulnolar & "_" & okulno
     
     If say = 51 Then
       say = 0
       
       dosyaadi = okulnolar & ".pdf"
       shizin.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
       ThisWorkbook.Path & "\" & dosyaadi, Quality:=xlQualityStandard, _
       IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
       
       shizin.PrintOut From:=1, To:=1, Copies:=1, Collate:=True
       okulnolar = ""
       say1 = 0
       
       For j = 1 To 3
         shizin.Cells(say1 + 4, "A").Value = ""
         shizin.Cells(say1 + 8, "B").Value = ""
         shizin.Cells(say1 + 9, "B").Value = ""
         shizin.Cells(say1 + 9, "F").Value = ""
         shizin.Cells(say1 + 10, "B").Value = ""
         say1 = say1 + 17
       Next j
   
     End If
   Next i
End Sub
 
Son düzenleme:
Kodda güncelleme yapıldı. Her üç öğrenciden sonra sayfaya girilen verilerin temizlenmesi eklendi.
 
Kodda güncelleme yapıldı. Her üç öğrenciden sonra sayfaya girilen verilerin temizlenmesi eklendi.
Asri Bey kodda çok küçük bir değişklikle verileri G3 ten itibaren aktarmaya çalıştım ancak tanımladığım verileri aktarmadı.Döngünün başlangıcı değişmeli diye düşündeüm ancak aktarım yapmadı.Kodun son hali aşağıda,
Kod:
Private Sub CommandButton4_Click()
 Set shveri = Sheets("VERİ")
   Set shizin = Sheets("VELİ_İZİN")
   verisonsatir = shveri.Cells(Rows.Count, "B").End(3).Row
   say1 = 0
   For j = 1 To 2
  
     shizin.Cells(say1 + 4, "A").Value = ""
     shizin.Cells(say1 + 8, "B").Value = ""
     shizin.Cells(say1 + 9, "B").Value = ""
     shizin.Cells(say1 + 9, "F").Value = ""
     shizin.Cells(say1 + 10, "B").Value = ""
     shizin.Cells(say1 + 4, "D").Value = ""
     shizin.Cells(say1 + 3, "G").Value = ""
     shizin.Cells(say1 + 12, "B").Value = ""
     shizin.Cells(say1 + 15, "B").Value = ""
     shizin.Cells(say1 + 16, "B").Value = ""
     
     say1 = say1 + 17
   Next j
   
   say = 0
   For i = 2 To verisonsatir
     
     adisoyadi = shveri.Cells(i, "C").Value
     sinifsube = shveri.Cells(i, "H").Value
     okulno = shveri.Cells(i, "B").Value
     velisi = shveri.Cells(i, "E").Value
     tc = shveri.Cells(i, "D").Value
     adres = shveri.Cells(i, "AJ").Value
     tel = shveri.Cells(i, "AS").Value
     cep = shveri.Cells(i, "AT").Value
     
    
     shizin.Cells(say + 4, "A").Value = adisoyadi
     shizin.Cells(say + 8, "B").Value = adisoyadi
     shizin.Cells(say + 9, "B").Value = sinifsube
     shizin.Cells(say + 9, "F").Value = velisi
     shizin.Cells(say + 10, "B").Value = okulno
     shizin.Cells(say + 4, "D").Value = txt_veli_izin.Text
     shveri.Cells(say + 3, "G").Value = tc
     shveri.Cells(say + 12, "B").Value = adres
     shveri.Cells(say + 15, "B").Value = tel
     shveri.Cells(say + 16, "B").Value = cep
     
     say = say + 17
     okulnolar = okulnolar & "_" & okulno
     
     If say = 51 Then
       say = 0
       
       dosyaadi = okulnolar & ".pdf"
       shizin.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
       ThisWorkbook.Path & "\" & dosyaadi, Quality:=xlQualityStandard, _
       IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
       
       shizin.PrintOut From:=1, To:=1, Copies:=1, Collate:=True
       okulnolar = ""
       say1 = 0
       
       For j = 1 To 3
      
         shizin.Cells(say1 + 4, "A").Value = ""
         shizin.Cells(say1 + 8, "B").Value = ""
         shizin.Cells(say1 + 9, "B").Value = ""
         shizin.Cells(say1 + 9, "F").Value = ""
         shizin.Cells(say1 + 10, "B").Value = ""
         shizin.Cells(say1 + 4, "D").Value = ""
        shveri.Cells(say + 3, "G").Value = ""
        shveri.Cells(say + 12, "B").Value = ""
        shveri.Cells(say + 15, "B").Value = ""
        shveri.Cells(say + 16, "B").Value = ""
         
         say1 = say1 + 17
       Next j
   
     End If
   Next i
End Sub
 
Aktarmanın yapıldığı döngü aşağıdaki satır. Kırmızılı yeri 3 yapıp deneyin.(Değiştirdiğiniz yerleri önceki haline getirin.)
Kod:
For i = [COLOR="Red"][B]2[/B][/COLOR] To verisonsatir
 
Aktarmanın yapıldığı döngü aşağıdaki satır. Kırmızılı yeri 3 yapıp deneyin.(Değiştirdiğiniz yerleri önceki haline getirin.)
Kod:
For i = [COLOR="Red"][B]2[/B][/COLOR] To verisonsatir
Onunla ilgisi yok sayın vardar07. Değişiklik derken kodun genel yapısı ile değil, sadece aktarılacak verilere 4 sütun daha ilave ettim , onlarında aktarılacağı izin sayfasındaki hücreler belirleyip ekledim.Ancak aktarmıyor.Bu arada kod (Sayın Asri beyin yazdığı şekliyle) sorunsuz çalışıyor.Ancak izin belgesine TC,adres falanda ilave gerketi. Sorun bu:)....
 
Yeni dosyanızı eklerseniz yardım etmeye çalışalım.
 
Denermisiniz.
Kod:
Private Sub CommandButton4_Click()
Set shveri = Sheets("VERİ")
   Set shizin = Sheets("VELİ_İZİN")
   verisonsatir = shveri.Cells(Rows.Count, "B").End(3).Row
   say1 = 0
   For j = 1 To 3
   shizin.Cells(say1 + 4, "A").Value = ""
   shizin.Cells(say1 + 8, "B").Value = ""
   shizin.Cells(say1 + 9, "B").Value = ""
   shizin.Cells(say1 + 9, "F").Value = ""
   shizin.Cells(say1 + 10, "B").Value = ""
   shizin.Cells(say1 + 4, "D").Value = ""
   shizin.Cells(say1 + 3, "G").Value = ""
   shizin.Cells(say1 + 12, "B").Value = ""
   shizin.Cells(say1 + 15, "B").Value = ""
   shizin.Cells(say1 + 16, "B").Value = ""
     say1 = say1 + 17
   Next j
   say = 0
   For i = 2 To verisonsatir
     adisoyadi = shveri.Cells(i, "C").Value
     sinifsube = shveri.Cells(i, "H").Value
     okulno = shveri.Cells(i, "B").Value
     velisi = shveri.Cells(i, "E").Value
     tc = shveri.Cells(i, "D").Value
     adres = shveri.Cells(i, "AJ").Value
     tel = shveri.Cells(i, "AS").Value
     cep = shveri.Cells(i, "AT").Value
     shizin.Cells(say + 4, "A").Value = adisoyadi
     shizin.Cells(say + 8, "B").Value = ":" & adisoyadi
     shizin.Cells(say + 9, "B").Value = ":" & sinifsube
     shizin.Cells(say + 9, "F").Value = velisi
     shizin.Cells(say + 10, "B").Value = ":" & okulno
'     shizin.Cells(say + 4, "D").Value = txt_veli_izin.Text
     shizin.Cells(say + 3, "G").Value = tc
     shizin.Cells(say + 12, "B").Value = ":" & adres
     shizin.Cells(say + 15, "B").Value = ":" & tel
     shizin.Cells(say + 16, "B").Value = ":" & cep
     say = say + 17
     okulnolar = okulnolar & "_" & okulno
     If say > 34 Then
       say = 0
       dosyaadi = okulnolar & ".pdf"
       shizin.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
       ThisWorkbook.Path & "\" & dosyaadi, Quality:=xlQualityStandard, _
       IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
       shizin.PrintOut From:=1, To:=1, Copies:=1, Collate:=True
       okulnolar = ""
       say1 = 0
       For j = 1 To 3
         shizin.Cells(say1 + 4, "A").Value = ""
         shizin.Cells(say1 + 8, "B").Value = ""
         shizin.Cells(say1 + 9, "B").Value = ""
         shizin.Cells(say1 + 9, "F").Value = ""
         shizin.Cells(say1 + 10, "B").Value = ""
         shizin.Cells(say1 + 4, "D").Value = ""
        shizin.Cells(say + 3, "G").Value = ""
        shizin.Cells(say + 12, "B").Value = ""
        shizin.Cells(say + 15, "B").Value = ""
       shizin.Cells(say + 16, "B").Value = ""
         say1 = say1 + 17
       Next j
     End If
   Next i
End Sub
 
Son düzenleme:
yeni verileri aktarmadığı gibi pdf aktarım satırında hata veriyor (döngünün veli izinde 51 de sonlanıp başa dönmesi lazım siz 34 yapmışsınız)
 
Sorun çözüldü Sayın vardar07. İlginiz için teşekkrüler.
 
Sorunun çözülmesine sevindim. Sizin eklediğiniz satırlardaki sayfa isimlerine dikkat etmemiştim.
Kodda kısaltılmış hali ile alternatif örnek olsun. Kolay gelsin.
 

Ekli dosyalar

Geri
Üst