Arkadaşlar kullandığım bir veri tabanı var.Aynı sheets üzerinde bu veriler bazen çoğalmakta bazende azalmakta (Bazen 8 sayfa bazende en fazla 10 sayfaya çıkmakta), tabiki bu durumdada doğal olarak sayfa sayısı azalıp çoğalmaktadır.
1- aşağıdaki kod haricinde otomatik olarak iki yüze yazdırabileceğimiz bir kod varmı?
2-eğer birinci şıkkı uygulayamıyorsak, 1. sayfayı yazdırdıktan sonra 2. sayfanın boş olup olmadığını kontrol edecek (Not:GÜNDEM sayfasının 2 nci 3 ncü ve diğer sayfalarını kontrol edecek, yani ayrı bir sayfa değil) eğer boşsa GoTo 10 gidecek ve diğer sayfalar içinde
Private Sub CommandButton4_Click()
'GÜNDEMİ YAZDIR
If MsgBox("Yazıcıya 6 adet kağıt yerleştirdinizmi?", vbYesNo) = vbNo Then
MsgBox "Kağıt yerleştirmediğiniz için işlemi iptal ettiniz." & vbCrLf & "" & vbCrLf & "Güle Güle.........", vbInformation
Exit Sub
End If
ActiveSheet.PageSetup.PrintArea = "$A$1:$S$" & Range("S65536").End(xlUp).Row 'YAZDIRMA ALANI BELİRLENİR
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1
'If sayfa boşsa Then GoTo 10
ActiveWindow.SelectedSheets.PrintOut From:=3, To:=3, Copies:=1
'If sayfa boşsa Then GoTo 10
ActiveWindow.SelectedSheets.PrintOut From:=5, To:=5, Copies:=1
'If sayfa boşsa Then GoTo 10
ActiveWindow.SelectedSheets.PrintOut From:=7, To:=7, Copies:=1
'If sayfa boşsa Then GoTo 10
ActiveWindow.SelectedSheets.PrintOut From:=9, To:=9, Copies:=1
If MsgBox("Şimdi kağıtları ters çevirin." & vbCrLf & "Çift sayfalar basılacak, yazdırılsınmı?", vbYesNo) = vbNo Then
MsgBox "Yazdırma işleminiz iptal edildi", vbInformation
Exit Sub
End If
10
ActiveWindow.SelectedSheets.PrintOut From:=2, To:=2, Copies:=1
'If sayfa boşsa Then GoTo 20
ActiveWindow.SelectedSheets.PrintOut From:=4, To:=4, Copies:=1
'If sayfa boşsa Then GoTo 20
ActiveWindow.SelectedSheets.PrintOut From:=6, To:=6, Copies:=1
'If sayfa boşsa Then GoTo 20
ActiveWindow.SelectedSheets.PrintOut From:=8, To:=8, Copies:=1
'If sayfa boşsa Then GoTo 20
ActiveWindow.SelectedSheets.PrintOut From:=10, To:=10, Copies:=1
20
Sheets("İCMAL").Select
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1
Sheets("GÜNDEM").Select
MsgBox "Yazdırma işlemi bitti.", vbInformation
End Sub
1- aşağıdaki kod haricinde otomatik olarak iki yüze yazdırabileceğimiz bir kod varmı?
2-eğer birinci şıkkı uygulayamıyorsak, 1. sayfayı yazdırdıktan sonra 2. sayfanın boş olup olmadığını kontrol edecek (Not:GÜNDEM sayfasının 2 nci 3 ncü ve diğer sayfalarını kontrol edecek, yani ayrı bir sayfa değil) eğer boşsa GoTo 10 gidecek ve diğer sayfalar içinde
Private Sub CommandButton4_Click()
'GÜNDEMİ YAZDIR
If MsgBox("Yazıcıya 6 adet kağıt yerleştirdinizmi?", vbYesNo) = vbNo Then
MsgBox "Kağıt yerleştirmediğiniz için işlemi iptal ettiniz." & vbCrLf & "" & vbCrLf & "Güle Güle.........", vbInformation
Exit Sub
End If
ActiveSheet.PageSetup.PrintArea = "$A$1:$S$" & Range("S65536").End(xlUp).Row 'YAZDIRMA ALANI BELİRLENİR
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1
'If sayfa boşsa Then GoTo 10
ActiveWindow.SelectedSheets.PrintOut From:=3, To:=3, Copies:=1
'If sayfa boşsa Then GoTo 10
ActiveWindow.SelectedSheets.PrintOut From:=5, To:=5, Copies:=1
'If sayfa boşsa Then GoTo 10
ActiveWindow.SelectedSheets.PrintOut From:=7, To:=7, Copies:=1
'If sayfa boşsa Then GoTo 10
ActiveWindow.SelectedSheets.PrintOut From:=9, To:=9, Copies:=1
If MsgBox("Şimdi kağıtları ters çevirin." & vbCrLf & "Çift sayfalar basılacak, yazdırılsınmı?", vbYesNo) = vbNo Then
MsgBox "Yazdırma işleminiz iptal edildi", vbInformation
Exit Sub
End If
10
ActiveWindow.SelectedSheets.PrintOut From:=2, To:=2, Copies:=1
'If sayfa boşsa Then GoTo 20
ActiveWindow.SelectedSheets.PrintOut From:=4, To:=4, Copies:=1
'If sayfa boşsa Then GoTo 20
ActiveWindow.SelectedSheets.PrintOut From:=6, To:=6, Copies:=1
'If sayfa boşsa Then GoTo 20
ActiveWindow.SelectedSheets.PrintOut From:=8, To:=8, Copies:=1
'If sayfa boşsa Then GoTo 20
ActiveWindow.SelectedSheets.PrintOut From:=10, To:=10, Copies:=1
20
Sheets("İCMAL").Select
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1
Sheets("GÜNDEM").Select
MsgBox "Yazdırma işlemi bitti.", vbInformation
End Sub
Son düzenleme:
