yıla göre otomatik sayı vermek

1 2
02/01/2011, 02:30

umuttk

Yardımlarınız için çok teşekkür ederim.
09/06/2017, 12:25

mihrali

Private Sub Komut41_Click()

DoCmd.GoToRecord , , acNewRec
 
Dim son_id, tablodaki_son_kayit, yil_bolumu As String

   son_id = DMax("siparis_id", "accessTr")
  'tablodaki_son_kayit = Nz(DLookup("siparis_no", "accessTr", "Left(siparis_no, 4)=" & tarih), 0)
   tablodaki_son_kayit = Nz(DLookup("siparis_no", "accessTr", "siparis_id=" & son_id), 0)
   
   If tablodaki_son_kayit = 0 Then
   
       txt_siparis_no = tarih & "-1"
       
   Else
   
       yil_bolumu = Left(tablodaki_son_kayit, 4)
       
       If yil_bolumu <> tarih Then
       
           txt_siparis_no = tarih & "-1"
           
       Else
       
           txt_siparis_no = yil_bolumu & "-" & Format(Mid(tablodaki_son_kayit, 6, 5) + 1, "0")
           
      'siparis_no = Nz(DMax("siparis_no", "accessTr", "Left(siparis_no, 4)=" & [Forms]![accessTr]![tarih], 6, 5) + 1, "0")
       
       End If
   
   End If
End Sub
Sayın hocam Yıllara göre otomatik sayı verme örneğiniz çok hoşuma gitti emeğiniz için teşekkürler.
ben bu örneği her yıl sayısı sıfırlanan defter kayıtları içip kullanmak istiyorum. örneğin evrak kayıt defterinde vb..

Örneğinizde bazı değişiklik yaptım; sayının önündeki sıfırları kaldırdım, yılı otomatik tarihten değilde kullanıcının
 
belirlediği yılı baz alacak, ayrıca yeni kayıt butonuna basınca yeni kayıt açıp sayıyı verecek şekilde değiştirdim.
Mevcut Programda son kaydın tarih yılı kontrol edilip +1 otomatik sayı artırılıyor.. eğer aynı tarihdeğilde farklı ise
yıla göre sıfırdan başlıyor.
Benim sizden isteğim; eski yıllardan birine dönüldüğünde sıfırdan değil, alandaki yılı kontrol edip max sayıya +1 eklemesini
istiyorum.
Yardımlarınız için şimdiden çok teşekkür ederim.
17/02/2022, 23:36

isu06

İyi akşamlar. İşlem aynı olacak ancak yıl ve sayı ayrı metin kutularında olacak. Bir türlü yapamadım.
18/02/2022, 09:09

husem

aşağıdaki kodu deneyebilirmisiniz?

txt_siparis_no = Format(Date, "yyyy") & "-" & Nz(DMax("clng(mid([siparis_no],6))", "accessTR", "left([siparis_no],4)=" & Format(Date, "yyyy")), 0) + 1
03/03/2022, 08:56

isu06

teşekkürler
03/03/2022, 09:42

sosyete28

Emeklerinize saglık teşekkür ederim paylaşımlar için..
1 2