Veri girişine göre otomatik sayı verme

Katılım
20 Ekim 2005
Mesajlar
299
Excel Vers. ve Dili
excel 2010 Türkçe
Merhaba işletme defteri oluşturmaya çalışıyorum.Birkaç konuda desteğe ihtiyacım var.Eklediğim dosyamda aylara göre sayfa oluşturdum.Ocak ayı içinde gider için B4,C4,D4,E4 hücrelerine ve devamında alt satırlar içinde veri girişi yapılınca A4 hücresine 1 den başlayarak otomatik sayı vermek istiyorum.Sayfalar 40 satırdan oluşacak 41.satır şubat sayfasından ve devamında 12 ay bu şekilde tamamlanacak .Aynı işlem sayfanın gelir bölümü içinde yapılacak(I4,J4,K4,L4) hücrelerine veri girişi yapılacak H4 hücresine otomatik sayı girişi yapılacak .
Veya gelir ve gider veri giriş sayfalarına sıra numarası kaydet düğmesi eklenerek nasıl yapılabilir.
 

Ekli dosyalar

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,084
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Aşağıdaki kodları Ocak sayfasının kod bölümüne (sayfa adına sağ tıklayıp kod görüntüle deyince açılan sayfaya) yapıştırarak deneyiniz. B ve I sütununa veri girdiğinzide ya da sildiğinizde işlem yapar. Diğer sayfalar için ise kodları o sayfanın kod bölümüne yapıştırıp, son kısımdaki target.row -3 bölümünü o sayfadaki başlangıç numarasına göre değiştirin.

Örneğin Şubat için target.row +37, MArt için target.row +77 olmalı vs.

Rich (BB code):
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("B4:B43, I4:I43")) Is Nothing Then Exit Sub
If Selection.Count > 1 Then Exit Sub
If Target = "" Then
    Target.Offset(0, -1) = ""
    Target.Offset(0, 1) = ""
    Target.Offset(0, 2) = ""
    Target.Offset(0, 3) = ""
Else
    Target.Offset(0, -1) = Target.Row - 3
End If
End Sub
 
Katılım
20 Ekim 2005
Mesajlar
299
Excel Vers. ve Dili
excel 2010 Türkçe
Çok teşekkür ederim Sayın YUSUF44 .Sorunsuz çalıştı
 

polis-53

Altın Üye
Katılım
26 Aralık 2008
Mesajlar
1,089
Excel Vers. ve Dili
EXCEL 2016 TÜRKÇE
Arkadaşlar ben bu hatayı alıyorum ne yapmalıyım
Bu projedeki makrolar devre dışı. Makroların nasıl etkinleştirileceğini belirlemek için lütfen ana bilgisayar uygulamasının çevrimiçi yardımına veya belgelerine başvurun.
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,084
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Ocak ayı için ilk verdiğim kodu kullanın. Şubat ayı için aşağıdaki kodu kullanın. Diğer aylar için ay ismini değiştirerek kullanın:

Rich (BB code):
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("B4:B43, I4:I43")) Is Nothing Then Exit Sub
If Selection.Count > 1 Then Exit Sub
If Target = "" Then
    Target.Offset(0, -1) = ""
    Target.Offset(0, 1) = ""
    Target.Offset(0, 2) = ""
    Target.Offset(0, 3) = ""
Else
    Target.Offset(0, -1) = WorksheetFunction.Max(Sheets("OCAK").[A4:A43], Sheets("OCAK").[H4:H43]) + Target.Row - 3
End If
End Sub
 
Üst