Skip to main content

AccessTr.neT


eksik sayıyı sıra olarak atama

eksik sayıyı sıra olarak atama

#7
(06/08/2021, 01:02)berduş yazdı: bunu
(06/08/2021, 00:56)lemoncher2 yazdı: Kodu çalıştıramadım siz çalıştırabilirmisiniz rica etsem
bunu yapmak için yeni bir VT , tablo, form oluşturmam, kayıt eklemem .... gerek
siz çalışmanızın ilgili kısmını ekleyin öyle deneyelim

Yarın örnek oluşturup paylaşırım ilginiz için teşekkür ederim iyi geceler
Cevapla
#8
rica ederim
iyi çalışmalar
Cevapla
#9
(06/08/2021, 00:53)berduş yazdı: yukardaki kod da döngü mantığını kullanmış, yani işe yarar gibi görünüyor ama buradaki Kimlik otomatik tam sayı olan kimlik mi sizin oluşturduğunuz kimlik mi?
bu soruma cevap vermediniz?
Cevapla
#10
(06/08/2021, 01:15)berduş yazdı:
(06/08/2021, 00:53)berduş yazdı: yukardaki kod da döngü mantığını kullanmış, yani işe yarar gibi görünüyor ama buradaki Kimlik otomatik tam sayı olan kimlik mi sizin oluşturduğunuz kimlik mi?
bu soruma cevap vermediniz?

Vermiştim oysaki
Bu kodu diğer forumdan aldım açıklamada yoktu orada. Otomatik sayımı yoksa bizim oluşturduğumuz mu bilmiyorum. Ancak bizim oluşturduğumuz sütun olduğunu düşünüyorum sonuçta işlemi orada yaptıracağız.
Cevapla
#11
(06/08/2021, 00:56)lemoncher2 yazdı: Sanırım bizim oluşturduğumuz sütun.
kusura bakmayı aradaki cümleyi atlamışım

kod düzgün çalışıyor
en azından denemelerimde sorun çıkmadı
modüle aşağıdaki kodu yazdım
bana olmayan ilk noyu verdi
Function Yok() As Long
Dim Kayit As Recordset, Sayac As Long
Set Kayit = CurrentDb.OpenRecordset("Select Kimlik from Dizeler order by Kimlik")
Kayit.MoveFirst
Do Until Kayit.EOF
Sayac = Sayac + 1
If Sayac <> Kayit!Kimlik Then Yok = Sayac: Exit Do
Kayit.MoveNext
Loop
Kayit.Close: Set Kayit = Nothing
End Function
Cevapla
#12
aşağıdaki kod daha doğru ve hızlı gibi
Function Yok() As Long
If DCount("Kimlik", "Dizeler") = DMax("Kimlik", "Dizeler") Then Yok = DMax("Kimlik", "Dizeler") + 1: Exit Function
Dim Kayit As Recordset, Sayac As Long
Set Kayit = CurrentDb.OpenRecordset("Select Kimlik from Dizeler order by Kimlik")
Kayit.MoveFirst
Do Until Kayit.EOF
Sayac = Sayac + 1
If Sayac <> Kayit!Kimlik Then Yok = Sayac: Exit Do
Kayit.MoveNext
Loop
If Yok = 0 Then Yok = Kayit.RecordCount + 1
Kayit.Close: Set Kayit = Nothing
End Function
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da
Task