• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

TC kimlik no üretme kodu VBA

Katılım
22 Kasım 2020
Mesajlar
10
Excel Vers. ve Dili
son sürüm.
Merhaba, hepinize sağlıklı günler dilerim.

Aşağıda belirttiğim kod işlevini yapıyor fakat B sütunundaki rakamları a1 sütununa yan yana yazdırırken kullandığım kod bir hayli uzun. alıştırma olsun diye vba ile böyle ufak alıştırmalar yapıyorum. aşağıda kalın olarak belirttiğim kod satırı yerine alternatif olacak önerilerini bekliyorum.

Kod:
Option Explicit

Sub random()
Dim x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, i As Integer

Range("b" & 1).Value = Int((9 - 1 + 1) * Rnd + 1) ''en küçük 1 en büyük 9 aralığında rastgele rakam üret
For i = 2 To 9

Range("b" & i).Value = Int((9 - 0 + 1) * Rnd + 0) ''en küçük 0 en büyük 9 aralığında rastgele rakam üret

Next

x1 = Range("b1").Value
x2 = Range("b2").Value
x3 = Range("b3").Value
x4 = Range("b4").Value
x5 = Range("b5").Value
x6 = Range("b6").Value
x7 = Range("b7").Value
x8 = Range("b8").Value
x9 = Range("b9").Value



Range("b10").Value = (((x1 + x3 + x5 + x7 + x9) * 7) - (x2 + x4 + x6 + x8)) Mod 10 ''Tc'no algoritması

Range("b11").Value = (x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9 + x10) Mod 10 ''Tc'no algoritması

Range("a1").Value = Range("b1").Value & Range("b2").Value & Range("b3").Value & Range("b4").Value & Range("b5").Value & Range("b6").Value & Range("b7").Value & Range("b8").Value & Range("b9").Value & Range("b10").Value & Range("b11").Value
End Sub



Range("a1").Value = Range("b1").Value & Range("b2").Value & Range("b3").Value & Range("b4").Value & Range("b5").Value & Range("b6").Value & Range("b7").Value & Range("b8").Value & Range("b9").Value & Range("b10").Value & Range("b11").Value
 
C++:
Range("A1")=""
For i=2 to 11
    Range("A1")=Range("A1") & Cells(1,i)
Next i
 
C++:
Range("A1")=""
For i=2 to 11
    Range("A1")=Range("A1") & Cells(1,i)
Next i

Maalesef hocam a1 hücresine tek bir rakam yazdırıyor. yapmak istediğim b1,b2,b3... hücrelerinde veriyi A1 hücresine yazdırmak. misal b1=1 b2=2 ise a1 hücresinin 12 olmasını istiyorum
 
Range("A1")=""
For i=1 to 11
Range("A1")=Range("A1") &Range("B" & i)
Next i
 
Alternatif;

C++:
    Range("A1") = Join(Application.Transpose(Range("B1:B11").Value), "")

.
 
Geri
Üst