• DİKKAT

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

Sütunda Bir Sonraki Sayıyı Bulma

Katılım
7 Mart 2021
Mesajlar
47
Excel Vers. ve Dili
2019 - Türkçe
Arkadaşlar merhaba,

A sütununda sicil numaraları bulunuyor. Burada yer alan sicil numaralarından düşeyara formülü ile diğer hücrelere bilgileri getiriyorum. Daha sonra pdf olarak kaydedip mail gönderme makrosu ile mailleri gönderiyorum. Bu aşamaya kadar bir sıkıntım bulunmuyor fakat 500-600 arasında sicil numarası bulunduğundan ve sicil numaraları arasında düzenli bir artış olmadığından bir sonraki sicil numarasını yazdırma aşamasında sorun yaşıyorum.

K4 hücresine yazılan sicilden sonra gelen sicil numarasını yine K4 hücresine yazdırmak için butona makro ataması yapmak istiyorum. Makro konusunda yardımcı olabilecek var mı?

Teşekkürler.
 
Merhaba,

Deneyiniz.
Kod:
Sub sicil()
    
    Dim c As Range
    
    Set c = [A:A].Find([K4], , xlValues, xlWhole)
    If Not c Is Nothing Then
        Range("K4") = Cells(c.Row + 1, "A")
    Else
        Range("K4") = Range("A2")
    End If
        
End Sub
 
Merhaba,

Deneyiniz.
Kod:
Sub sicil()
   
    Dim c As Range
   
    Set c = [A:A].Find([K4], , xlValues, xlWhole)
    If Not c Is Nothing Then
        Range("K4") = Cells(c.Row + 1, "A")
    Else
        Range("K4") = Range("A2")
    End If
       
End Sub

Hocam yardımınız için teşekkürler. Konuyu açarken belirtmeyi unuttuğum için öncelikle kusura bakmayın.

A sütununda yer alan sicil numaraları A2 hücresinden başlıyor ve tahakkuk sheetinde yer alıyor.

K4 hücresi ise BordroTasarimi sheetinde yer alıyor.
 
Deneyiniz.
Kod:
Sub sicil()
    
    Dim c As Range, S1 As Worksheet, S2 As Worksheet
    
    Set S1 = Sheets("tahakkuk")
    Set S2 = Sheets("BordroTasarimi")
    
    Set c = S1.[A:A].Find(S2.[K4], , xlValues, xlWhole)
    If Not c Is Nothing Then
        S2.Range("K4") = S1.Cells(c.Row + 1, "A")
    Else
        S2.Range("K4") = S1.Range("A2")
    End If
        
End Sub
 
Deneyiniz.
Kod:
Sub sicil()
   
    Dim c As Range, S1 As Worksheet, S2 As Worksheet
   
    Set S1 = Sheets("tahakkuk")
    Set S2 = Sheets("BordroTasarimi")
   
    Set c = S1.[A:A].Find(S2.[K4], , xlValues, xlWhole)
    If Not c Is Nothing Then
        S2.Range("K4") = S1.Cells(c.Row + 1, "A")
    Else
        S2.Range("K4") = S1.Range("A2")
    End If
       
End Sub

Teşekkürler hocam, kod doğru bir şekilde çalışıyor.
 
Geri
Üst