Destek Talep : Hücredeki veriyi random kısaltma

sistemarjin

Altın Üye
Katılım
21 Eylül 2023
Mesajlar
4
Excel Vers. ve Dili
2019
Altın Üyelik Bitiş Tarihi
21-09-2028
Merhaba,

Harf ve Rakamlardan oluşan yaklaşık 5Bin satır civarı benzersiz 27 karakterli kod numaraları var.
Bunları belli bir kurala bağlı olarak yine sadece harf ve rakamlardan oluşan 8 ya da 10 karaktere kadar çevirip kısaltacak formul ya da fonksiyon arıyorum bulamadım.

Örnek:
AUDA3SSUNTY2329INCPFMXAND => XE5SWT3UL4
AUDA4SUNTY4649INCPNVMAN3 => ET5TQ5CK2P

Bu konuda fikri olan varsa ve paylaşırsa sevinirim.

Şimdiden teşekkürler
 

Ekli dosyalar

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,167
Excel Vers. ve Dili
2019 Türkçe
Merhaba.
Aşağıdaki kodu deneyiniz.
kodlar A kolonunda olmalı, yeni kodlar B kolonuna yazılacaktır.

Kod:
Sub test()
    Dim Bak As Long
    Dim Kod As String
    Dim YKod As String
    Dim YKarakter As String
    Dim KSay As Integer
    Dim YenikodSayisi As Integer
    YenikodSayisi = 8
    For Bak = 1 To Cells(Rows.Count, "A").End(xlUp).Row
        For BakKod = 1 To YenikodSayisi
            Kod = Cells(Bak, "A")
            KSay = Len(Kod)
            YKarakter = Right(Left(Kod, Int((KSay * Rnd) + 1)), 1)
            YKod = YKod & YKarakter
            Kod = Replace(Kod, YKarakter, "")
        Next
        Cells(Bak, "B") = YKod
        YKod = ""
    Next
End Sub
 

sistemarjin

Altın Üye
Katılım
21 Eylül 2023
Mesajlar
4
Excel Vers. ve Dili
2019
Altın Üyelik Bitiş Tarihi
21-09-2028
Merhaba.
Aşağıdaki kodu deneyiniz.
kodlar A kolonunda olmalı, yeni kodlar B kolonuna yazılacaktır.

Kod:
Sub test()
    Dim Bak As Long
    Dim Kod As String
    Dim YKod As String
    Dim YKarakter As String
    Dim KSay As Integer
    Dim YenikodSayisi As Integer
    YenikodSayisi = 8
    For Bak = 1 To Cells(Rows.Count, "A").End(xlUp).Row
        For BakKod = 1 To YenikodSayisi
            Kod = Cells(Bak, "A")
            KSay = Len(Kod)
            YKarakter = Right(Left(Kod, Int((KSay * Rnd) + 1)), 1)
            YKod = YKod & YKarakter
            Kod = Replace(Kod, YKarakter, "")
        Next
        Cells(Bak, "B") = YKod
        YKod = ""
    Next
End Sub


SÜPER ÖTESİ MÜKEMMEL!!!

TEŞEKKÜRLER
 
Üst