Belli şartlara göre sıra numarası vermek

Katılım
20 Ekim 2005
Mesajlar
301
Excel Vers. ve Dili
excel 2010 Türkçe
Altın Üyelik Bitiş Tarihi
28/06/2023
Merhaba ekteki dosyamda G sütununda üç farklı kayıt şekli var 1-kayıt yapıldı 2-isteğe bağlı erteleme 3- erteleme anasınıfına kayıt şeklinde .G sütunundaki satırlara bu kayıt türlerinden biri girildiğinde F sütununda kayıt sıra numarası vermesini nasıl yapabiliriz. Her bir tür için ayrı ayrı sıra numarası vermiş olacak .
 

Ekli dosyalar

Katılım
30 Mart 2010
Mesajlar
240
Excel Vers. ve Dili
2007,2010,2013
Altın Üyelik Bitiş Tarihi
29-05-2021
Merhaba,

"F" sütununuzun hücre biçimini "sayı" formatına çeviriniz. Ardından "F3" hücresine aşağıdaki formülü kopyalayıp, diğer hücrelere çoğaltınız.
İstediğiniz bu tarzda bir şey mi?

Kod:
=EĞER(G3="";"";EĞER(G3="İSTEĞE BAĞLI ERTELEME";EĞERSAY($G$3:G3;"İSTEĞE BAĞLI ERTELEME");EĞER(G3="KAYDI YAPILDI";EĞERSAY($G$3:G3;"KAYDI YAPILDI");EĞER(G3="ERTELEME ANASINIFINA KAYIT";EĞERSAY($G$3:G3;"ERTELEME ANASINIFINA KAYIT")))))
 

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,184
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
Merhaba,

F3:
=EĞER(G3="";"";EĞERSAY($G$3:G3;G3))

F sütununun biçimini Genel olarak değiştiriniz.
 
Katılım
20 Ekim 2005
Mesajlar
301
Excel Vers. ve Dili
excel 2010 Türkçe
Altın Üyelik Bitiş Tarihi
28/06/2023
Yardımlarınız için teşekkür ederim Formül çalışıyor ama kayıt yapıldıkça sıralamayı baştan yapıyor. Benim istediğim en son kayıt yapılan son numara olması gerekiyor .Formülde 5. satırda kayıt yaptım 1 numara kayıt yaptı. 3. satırı kayıt yapınca 2 numara olarak değil 1 numaraya aldı 5. satırdaki kaydı 2 numaraya aldı.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,747
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Sayfanızın kod bölümüne uygulayıp deneyiniz.

G sütununda değişiklik yaptıkça sıra numarası yenilenecektir. Deneyin sorun çıkarsa revize ederiz.

C++:
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Sira_No As Long, Son As Long
    If Intersect(Target, Range("G3:G" & Rows.Count)) Is Nothing Then Exit Sub
    If Target.Cells.Count > 1 Then Exit Sub
    If Target = "" Then Cells(Target.Row, "F") = "": Exit Sub
    Son = Cells(Rows.Count, "G").End(3).Row
    Sira_No = Evaluate("=MAX(IF(G3:G" & Son & "=""" & Target.Value & """,F3:F" & Son & "))")
    Cells(Target.Row, "F") = Sira_No + 1
End Sub
 

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,184
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
Çalışma sayfasının kod bölümüne kopyalayıp deneyiniz. G sütununda veri girişinde kodlar çalışır.
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)

    Dim son As Long, f As Double

    If Intersect(Target, [G:G]) Is Nothing Then Exit Sub
  
    son = Cells(Rows.Count, "G").End(xlUp).Row

    With Target
        If .Row < 3 Then Exit Sub
        If .Count > 1 Then Exit Sub
        If .Value = "" Then .Offset(0, -1) = "": Exit Sub
        f = Evaluate("=MAX(IF(G3:G" & son & "=""" & .Value & """ ,F3:F" & son & "))")
        .Offset(0, -1) = f + 1
    End With
  
End Sub
 
Katılım
20 Ekim 2005
Mesajlar
301
Excel Vers. ve Dili
excel 2010 Türkçe
Altın Üyelik Bitiş Tarihi
28/06/2023
Sayın Korhan Ayhan Bey yardımınız için teşekkür ederim. Sorun çözüldü emeğinize sağlık.
 
Katılım
20 Ekim 2005
Mesajlar
301
Excel Vers. ve Dili
excel 2010 Türkçe
Altın Üyelik Bitiş Tarihi
28/06/2023
Sayın Ömer Bey sizede ayrıca yardımınız için teşekkür ederim . Sorun çözüldü emeğinize sağlık. Her iki kod da çalışıyor.
 
Üst