Yazdırma Sayısı Baştan Başlamasını Değiştirmek.

Katılım
13 Ocak 2010
Mesajlar
20
Excel Vers. ve Dili
EXCEL 2007
Altın Üyelik Bitiş Tarihi
16.06.2017
Merhaba.

Koli Üstü yazdırmak için bir tablo hazırladım. Bu tabloda G9 hücresinde "Koli Numarası" bölümü var.
Bir buton koydum aşağıda ki makroyu atadım. Basılacak etiket adetini girdiğimde G9 hücresi o sayıda artıyor.
Ancak yeniden etiket bastırmak için etiket sayısı girdiğimde sayı 1'den başlıyor.
Kaldığı yerden devam etmesi için hangi değişikliği yapmam gerekiyor.
Teşekkürler.

Sub IncrementPrint()
'updateby Extendoffice
Dim xCount As Variant
Dim xScreen As Boolean
Dim I As Long
On Error Resume Next
LInput:
xCount = Application.InputBox("Yazdırılacak Koli Üstü Sayısını Giriniz:", "Koli Üstü Yazdırma")
If TypeName(xCount) = "Boolean" Then Exit Sub
If (xCount = "") Or (Not IsNumeric(xCount)) Or (xCount < 1) Then
MsgBox "Hatalı Giriş , Yeniden Deneyin", vbInformation, "Koli Üstü Yazdırma"
GoTo LInput
Else
xScreen = Application.ScreenUpdating
Application.ScreenUpdating = False
For I = 1 To xCount
ActiveSheet.Range("G9").Value = " 00" & I
ActiveSheet.PrintOut
Next
ActiveSheet.Range("G9").ClearContents
Application.ScreenUpdating = xScreen
End If
End Sub
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,372
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,

Kodlarınızı G9 hücresinden başlatarak istediğiniz sayıda koli yazdırma şekline çevirdim. Anladığım buydu.

G9 hücresini özel hücre biçimlendirmeden 000 olarak biçimlendirin.

Kod:
Sub IncrementPrint()
    'updateby Extendoffice
    Dim xCount As Variant
    Dim I As Long
    On Error Resume Next
LInput:
    xCount = Application.InputBox("Yazdırılacak Koli Üstü Sayısını Giriniz:", "Koli Üstü Yazdırma")
    If TypeName(xCount) = "Boolean" Then Exit Sub
    If (xCount = "") Or (Not IsNumeric(xCount)) Or (xCount < 1) Then
        MsgBox "Hatalı Giriş , Yeniden Deneyin", vbInformation, "Koli Üstü Yazdırma"
        GoTo LInput
    Else
        Application.ScreenUpdating = False
        For I = 1 To xCount
            ActiveSheet.Range("G9") = ActiveSheet.Range("G9") + 1
            ActiveSheet.PrintOut
        Next
        Application.ScreenUpdating = False
    End If
End Sub
 
Katılım
13 Ocak 2010
Mesajlar
20
Excel Vers. ve Dili
EXCEL 2007
Altın Üyelik Bitiş Tarihi
16.06.2017
Teşekkür ederim. İstediğim buydu.
Ellerinize sağlık.
 
Üst