14/02/2010, 17:41
Siz otomatik sayıyı sadece indexlemek için kullanmalısınız zaten. Görülen sayı değerleri sizin algoritmanız tarafından üretilmeli. Bu algoritmayı da ister yıldan, ister tarihten, ister kullanıcı adından üretin. Ben bir ara tarihten benzersiz sayı üreten bir çalışma yapmıştım. Tamamen özgün bir çalışmaydı. Daha sonra daha basit yapılabileceğini de öğrendim ama, bence iyi bir denemeydi. Oluşan sayı sonuç olarak o anın tekrarlanamamsına bağlı olarak ve kullanıcıların sistem saatlerine göre üretildiği için benzersizdi. Bunun için aşağıdaki kodu yazmıştım.
Böylece now() ile alınan tarih ve saat kullanılarak benzersiz ve tekrarlanamayan bir seri oluşturulur. Aynı anda yenikayıt butonu basılsa bile saniyesi saniyesine aynı sayının üretilmesi biraz mucize olur sanırım. Ama o da olmasın derseniz bir kontrol konularak Dlookup ile tablo kontrol edilir ve eğer bu değer varsa kullanıcı uyarılır veya en iyisi yeniden değerler oluşturulur. Bunu deneyin..
Kod:
Dim a, b, c, d, e, F, g, h As String
'bende string hastalığı varmış o zamanlar:)
a = Now()
b = Mid(a, 1, 2)
c = Mid(a, 4, 2)
d = Mid(a, 7, 4)
e = Mid(a, 12, 2)
F = Mid(a, 15, 2)
g = Mid(a, 18, 2)
h = d & c & b & e & F & g
Böylece now() ile alınan tarih ve saat kullanılarak benzersiz ve tekrarlanamayan bir seri oluşturulur. Aynı anda yenikayıt butonu basılsa bile saniyesi saniyesine aynı sayının üretilmesi biraz mucize olur sanırım. Ama o da olmasın derseniz bir kontrol konularak Dlookup ile tablo kontrol edilir ve eğer bu değer varsa kullanıcı uyarılır veya en iyisi yeniden değerler oluşturulur. Bunu deneyin..