Konu Araçları | Seçenekler: | Gösterim Stili
Tarih
25/03/2012 22:42
Konu Sahibi
accessman
Yorumlar
12
Okunma
8131
Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 5
  • 4
  • 3
  • 2
  • 1

Derecelendirme: 0/5 - 0 oy

accessman

Aktif Üye
Kullanici Avatari
Aktif Üye
2.367
31/10/2008
425
Denizli
Ofis 2003
20/09/2016,00:20
Çözüldü 
iyi akşamlar
11 rakamlı sayılardan hangilerinin tc no olup olamayacağını kontrol edebildiğimize göre
rasgele tc no üretebilirmiyiz
teşekkürler


@benbendedeilem
Cevapla

ozanakkaya

sledgeab
Kullanici Avatari
Kurucu
O.... A....
9.875
29/01/2008
Denizli
Memur
Ofis 2010 32 Bit
Bugün,02:14
Çözüldü 
9 haneyi yaz butonu tıkla

Ek Dosyalar
TCKİMLİK.rar


Cevapla

accessman

Aktif Üye
Kullanici Avatari
Aktif Üye
2.367
31/10/2008
425
Denizli
Ofis 2003
20/09/2016,00:20
Çözüldü 
biraz denedim
komut butonuna şu kodu yazarak

Kod:
1
2
3
4
5
6
7
8
9
10
For kayitx = 10000000000# To 99999999999#
If TCKimlikNoYazimKontrol(kayitx) = False Then
Me.SUNUC = "HATALI"
Me.TCNO = kayitx
Else
Me.SUNUC = "GERÇEK"
Me.TCNO = kayitx
End If
DoCmd.GoToRecord , , acNewRec
Next


yarım saatten fazla bekleyerek
(daha fazla sabredemedim
çünkü işlemci hızı 2794 cpu scaklığı 64 derecede 45 dk yakın çalıştı)
7.251.697 kayıt eklendi
10000000000 ile
10007251696 sayıları arasındaki sayılardan
72517 tanesi tc no ya uygun sayılarmış
buda yaklaşık olarak 1/10 na tekabül ediyor
yaklaşık 90 milyar uygun numara elde edilebilir


@benbendedeilem
Cevapla

ozanakkaya

sledgeab
Kullanici Avatari
Kurucu
O.... A....
9.875
29/01/2008
Denizli
Memur
Ofis 2010 32 Bit
Bugün,02:14
Çözüldü 
ilk tc kimlik numarası Atatürk'e verildi.
İlk 9 hanesi 100000001, son ikisi 46
ilk 9 hane en fazla 999999999 olacağı için "899.999.999" uygun numara elde edilebilir.


Cevapla

accessman

Aktif Üye
Kullanici Avatari
Aktif Üye
2.367
31/10/2008
425
Denizli
Ofis 2003
20/09/2016,00:20
Çözüldü 
şu daha kolaymış

Kod:
1
2
3
4
5
6
For kayitx = 10000000000# To 99999999999#
If TCKimlikNoYazimKontrol(kayitx) = False Then GoTo 50
Me.TCNO = kayitx
DoCmd.GoToRecord , , acNewRec
50
Next


@benbendedeilem
Cevapla

Yandemir

Only Office 2003
Kullanici Avatari
Altın Üye
M.... Y....
1.435
26/08/2009
482
Tekirdağ
Ofis 2003
16/10/2017,18:10
Çözüldü 
yeni bir form oluştur. içine Text alan koy adı tcnosu olsun birde commandbutton adı command2 olsun ve formun kod kısmına aşağıdaki kodu yapıştır.

Visual Basic Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
Option Compare Database

Private Function tcknkontrol(tckn As Double)
    Dim dizi(1 To 9) As Integer
    gecici = Int(tckn / 100)
    gecici2 = Int(tckn / 100)

    For I = 9 To 1 Step -1
        dizi(I) = gecici2 Mod 10
        gecici2 = Int(gecici2 / 10)
    Next I

    deg1 = dizi(9) + dizi(7) + dizi(5) + dizi(3) + dizi(1)
    deg2 = dizi(8) + dizi(6) + dizi(4) + dizi(2)
    toplam = deg1 * 3 + deg2
    kontrol1 = (10 - (toplam Mod 10)) Mod 10

    deg1 = kontrol1 + dizi(8) + dizi(6) + dizi(4) + dizi(2)
    deg2 = dizi(9) + dizi(7) + dizi(5) + dizi(3) + dizi(1)
    toplam = deg1 * 3 + deg2
    kontrol2 = (10 - (toplam Mod 10)) Mod 10

    gecici = gecici * 100 + kontrol1 * 10 + kontrol2
    If gecici = tckn Then tcknkontrol = True Else tcknkontrol = False
End Function

Private Function rastgelets(altsinir, ustsinir As Double) As Double
    Randomize
    rastgelets = Int((ustsinir - altsinir + 1) * Rnd + altsinir)
End Function

Private Sub Command2_Click()
    Dim a As Double
    a = 10000000000#
    While tcknkontrol(a) = False
        DoEvents
        a = rastgelets(10000000000#, 99999999999#)
    Wend
    Me.tcnosu = a

End Sub

Private Sub Form_Load()
    'Shell "TASKKILL /F /IM excel*"
    
    Dim a As Double
    a = 10000000000#
    While tcknkontrol(a) = False
        DoEvents
        a = rastgelets(10000000000#, 99999999999#)
    Wend
    Me.tcnosu = a
End Sub


Murat YANDEMİR ( PyramiD YAZILIM Uluslar Arası Nakliye Programları )
Bilgisayar Programcısı (1989'dan beri)

+rep Yollar biter Access bitmez. +rep
Cevapla


Konuyu Okuyanlar: 2 Ziyaretçi

Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Tarih Son Yorum
Çözüldü Access Formda Rastgele (random) Resimlerin Aynı Olmamasını Nasıl Sağlarız? mehami 5 599 15/04/2017, 09:25 ozanakkaya
Çözüldü Form'da Kimlik(Id) alanına elle değer girilebilmesi. İbrahim Şenol 12 621 27/03/2017, 11:34 atoz112
Çözüldü Sorguda Id Numarası Yerine İlişkili Tablodaki Adının Gelmesi cazcaz678 4 399 04/03/2017, 18:46 cazcaz678
Çözüldü Tabloda Telefon numarası yoksa eklesin. 53rize 7 657 18/12/2016, 15:30 53rize
Çözüldü Aynı Kimlik Numarasının Tekrar Girilmesini Engelleme soguk27 13 3.913 17/12/2016, 21:36 3535izmir3535

Türkçe Çeviri: MCTR, Yazılım: MyBB, © 2002-2017 MyBB Group.
Forum use Krzysztof "Supryk" Supryczynski addons.