Soru Excel'de rastgele şifre oluşturma

istanbulcahan

Altın Üye
Katılım
11 Ocak 2008
Mesajlar
1,386
Excel Vers. ve Dili
Office 365 (Türkçe)
Altın Üyelik Bitiş Tarihi
05-11-2024
Excel'de büyük harf, küçük harf ve rakamları da içeren rastgele şifre üretebilme yapılabilir mi.
Örnek dosya ektedir.
 

Ekli dosyalar

Katılım
9 Şubat 2022
Mesajlar
135
Excel Vers. ve Dili
Ofis 2021 TR 64 Bit
Altın Üyelik Bitiş Tarihi
09-02-2027
=DAMGA(RASTGELEARADA(65; 90)) & DAMGA(RASTGELEARADA(97; 122)) & DAMGA(RASTGELEARADA(48; 57)) & DAMGA(RASTGELEARADA(65; 90)) & DAMGA(RASTGELEARADA(97; 122)) & DAMGA(RASTGELEARADA(48; 57)) & DAMGA(RASTGELEARADA(65; 90)) & DAMGA(RASTGELEARADA(97; 122))

Bu formül ile excelin 8 karakter uzunluğunda karmaşık rastgele yeni şifreler üretmesini sağlayabilirsiniz Örneğin:

Va2Mg9Qt


her seferinde yeni bir sonuç üretir. Belli bir kurala göre kompleks şifre üretmek için ise makro yapılabilir.
 
Son düzenleme:

RBozkurt

𐱅𐰇𐰼𐰚
Altın Üye
Katılım
10 Ocak 2018
Mesajlar
587
Excel Vers. ve Dili
Microsoft Office 2024
Google Sheets
Altın Üyelik Bitiş Tarihi
19-12-2026
F2'de bulunan karakter sayısını baz alarak H2 hücresine şifre oluşturur.

F2 hücresini iptal etmek isterseniz
sifreUzunluk = Range("F2").Value satırını sifreUzunluk = 8 gibi değiştirin. 8 karakter oluşturur.

İstemediğiniz karakterleri aşağıdaki bölümden çıkarın veya ekleyin.
karakterler = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()-_"


C++:
Sub RastgeleSifreUret()
    Dim sifreUzunluk As Integer
    sifreUzunluk = Range("F2").Value

    Dim karakterler As String
    karakterler = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()-_"

    Dim rastgeleSifre As String
    Dim i As Integer
    For i = 1 To sifreUzunluk
        rastgeleSifre = rastgeleSifre & Mid(karakterler, Int((Len(karakterler) * Rnd) + 1), 1)
    Next i

    Range("H2").Value = rastgeleSifre
End Sub
 

Ekli dosyalar

Katılım
21 Aralık 2016
Mesajlar
704
Excel Vers. ve Dili
Office 365 TR
Alternatif olsun.
Excel365 kullanıcısı olduğunuzdan, Excel365 ile çözüm.

Şifrenin karakter adedini (yani uzunluğunu) B2 hücresine yazın.
1 adetten fazla şifre istiyorsanız da kaç adet şifre olacağını B3 hücresine yazın.

Bu B2 ve B3 (1 adetten fazla şifre istenmesi halinde) hücrelerindeki değerler formülde kullanılacak.

İstenilen şifrede Büyük Harf, Küçük Harf ve Rakamlardan en az 1 er adet olacaksa,

Yalnızca 1 adet Şifre isteniyorsa (B3 hücresinin önemi yok, B3 olmayabilir de) Ama B2 hücresine en az 3 olacak şekilde Tamsayı yazılmalı.
Kod:
=LET(SUz;B2;Rkm;"0123456789";BHf;"ABCDEFGHIJKLMNOPQRSTUVWXYZ";KHf;"abcdefghijklmnopqrstuvwxyz";EĞER(SUz<3;"";LET(d;PARÇAAL(Rkm;RASTGELEARADA(1;10);1);e;PARÇAAL(BHf;RASTGELEARADA(1;26);1);f;PARÇAAL(KHf;RASTGELEARADA(1;26);1);g;PARÇAAL(Rkm&BHf&KHf;RASGDİZİ(;SUz-3;1;62;1);1);ARALIKBİRLEŞTİR(SIRALAÖLÇÜT(YATAYYIĞ(d;e;f;g);RASGDİZİ(;SUz))))))
1 den fazla adette şifre isteniyorsa B3 hücresine 1 den büyük Tamsayı yazın ve B2 hücresine en az 3 olacak şekilde Tamsayı yazılmalı.
Kod:
=LET(SUz;B2;Adet;B3;Rkm;"0123456789";BHf;"ABCDEFGHIJKLMNOPQRSTUVWXYZ";KHf;"abcdefghijklmnopqrstuvwxyz";EĞER(SUz<3;"";LET(d;PARÇAAL(Rkm;RASGDİZİ(Adet;1;1;10;1);1);e;PARÇAAL(BHf;RASGDİZİ(Adet;1;1;26;1);1);f;PARÇAAL(KHf;RASGDİZİ(Adet;1;1;26;1);1);g;PARÇAAL(Rkm&BHf&KHf;RASGDİZİ(Adet;SUz-3;1;62;1);1);h;YATAYYIĞ(d;e;f;g);MAP(SIRALI(Adet);LAMBDA(x;ARALIKBİRLEŞTİR(SIRALAÖLÇÜT(İNDİS(h;x);RASGDİZİ(;SUz))))))))
İstenilen şifrede Büyük Harf, Küçük Harf ve Rakamlardan herhangi bir KOŞUL Yoksa, yani, bazen Büyük Harf, bazen Küçük Harf ve bazen de Rakamlardan HİÇ olmayabilecekse

Yalnızca 1 adet Şifre isteniyorsa (B3 hücresinin önemi yok, B3 olmayabilir de) ama B2 ye 0 dan büyük tamsayı yazılmalı.
Kod:
=LET(SUz;B2;Krk;"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";ARALIKBİRLEŞTİR(PARÇAAL(Krk;RASGDİZİ(;SUz;1;62;1);1)))
1 den fazla adette şifre isteniyorsa B3 hücresine 1 den büyük Tamsayı yazın ve B2 hücresine de 0 dan büyük tamsayı yazılmalı.
Kod:
=LET(SUz;B2;Adet;B3;Krk;"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";MAP(SIRALI(Adet);LAMBDA(x;ARALIKBİRLEŞTİR(İNDİS(PARÇAAL(Krk;RASGDİZİ(Adet;SUz;1;62;1);1);x)))))
 

istanbulcahan

Altın Üye
Katılım
11 Ocak 2008
Mesajlar
1,386
Excel Vers. ve Dili
Office 365 (Türkçe)
Altın Üyelik Bitiş Tarihi
05-11-2024
Alternatif olsun.
Excel365 kullanıcısı olduğunuzdan, Excel365 ile çözüm.

Şifrenin karakter adedini (yani uzunluğunu) B2 hücresine yazın.
1 adetten fazla şifre istiyorsanız da kaç adet şifre olacağını B3 hücresine yazın.

Bu B2 ve B3 (1 adetten fazla şifre istenmesi halinde) hücrelerindeki değerler formülde kullanılacak.

İstenilen şifrede Büyük Harf, Küçük Harf ve Rakamlardan en az 1 er adet olacaksa,

Yalnızca 1 adet Şifre isteniyorsa (B3 hücresinin önemi yok, B3 olmayabilir de) Ama B2 hücresine en az 3 olacak şekilde Tamsayı yazılmalı.
Kod:
=LET(SUz;B2;Rkm;"0123456789";BHf;"ABCDEFGHIJKLMNOPQRSTUVWXYZ";KHf;"abcdefghijklmnopqrstuvwxyz";EĞER(SUz<3;"";LET(d;PARÇAAL(Rkm;RASTGELEARADA(1;10);1);e;PARÇAAL(BHf;RASTGELEARADA(1;26);1);f;PARÇAAL(KHf;RASTGELEARADA(1;26);1);g;PARÇAAL(Rkm&BHf&KHf;RASGDİZİ(;SUz-3;1;62;1);1);ARALIKBİRLEŞTİR(SIRALAÖLÇÜT(YATAYYIĞ(d;e;f;g);RASGDİZİ(;SUz))))))
1 den fazla adette şifre isteniyorsa B3 hücresine 1 den büyük Tamsayı yazın ve B2 hücresine en az 3 olacak şekilde Tamsayı yazılmalı.
Kod:
=LET(SUz;B2;Adet;B3;Rkm;"0123456789";BHf;"ABCDEFGHIJKLMNOPQRSTUVWXYZ";KHf;"abcdefghijklmnopqrstuvwxyz";EĞER(SUz<3;"";LET(d;PARÇAAL(Rkm;RASGDİZİ(Adet;1;1;10;1);1);e;PARÇAAL(BHf;RASGDİZİ(Adet;1;1;26;1);1);f;PARÇAAL(KHf;RASGDİZİ(Adet;1;1;26;1);1);g;PARÇAAL(Rkm&BHf&KHf;RASGDİZİ(Adet;SUz-3;1;62;1);1);h;YATAYYIĞ(d;e;f;g);MAP(SIRALI(Adet);LAMBDA(x;ARALIKBİRLEŞTİR(SIRALAÖLÇÜT(İNDİS(h;x);RASGDİZİ(;SUz))))))))
İstenilen şifrede Büyük Harf, Küçük Harf ve Rakamlardan herhangi bir KOŞUL Yoksa, yani, bazen Büyük Harf, bazen Küçük Harf ve bazen de Rakamlardan HİÇ olmayabilecekse

Yalnızca 1 adet Şifre isteniyorsa (B3 hücresinin önemi yok, B3 olmayabilir de) ama B2 ye 0 dan büyük tamsayı yazılmalı.
Kod:
=LET(SUz;B2;Krk;"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";ARALIKBİRLEŞTİR(PARÇAAL(Krk;RASGDİZİ(;SUz;1;62;1);1)))
1 den fazla adette şifre isteniyorsa B3 hücresine 1 den büyük Tamsayı yazın ve B2 hücresine de 0 dan büyük tamsayı yazılmalı.
Kod:
=LET(SUz;B2;Adet;B3;Krk;"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";MAP(SIRALI(Adet);LAMBDA(x;ARALIKBİRLEŞTİR(İNDİS(PARÇAAL(Krk;RASGDİZİ(Adet;SUz;1;62;1);1);x)))))
Bu şekilde bir sistem oluşturmak mümkünmü

İstenilen şifrede kullanılacak her şifre oluşumunda rastgele bu siteme göre

qwertyuıop

3 harf küçük

asdfghjkAşa

4 harf büyük

zxcvbnm

4 harf büyük

*/!'^+%&(

2

(=!"<12345

2

67890*-

3

 

18

 
Katılım
21 Aralık 2016
Mesajlar
704
Excel Vers. ve Dili
Office 365 TR
 

A

B

C

1

Karakterler

Adet

 

2

qwertyuıop

3

SM'w3ıCNF8+5*DAr-V

3

ASDFGHJKŞ

4

 

4

ZXCVBNM

4

 

5

*/!'^+%&(

2

 

6

(=!"<12345

2

 

7

67890*-

3

 


1 - Adetlerin toplamı kadar karakter Şifreyi oluşturur. Şu durumda 18 karakterden oluşan bir Şifre olacak.
2 - Rastgele olayı için bir koşul belirtilmemiş. Örneğin 2. satırdaki, qwertyuıop karakterlerinden 3 adet alınacak. Bunlar benzersiz mi olacak yoksa qqq gibi 3 ü de aynı değer olabilir mi? Formülde benzersiz olarak değerlendirildi.
3 - 1 adet Şifre üretiliyor.

C2 hücresine
Kod:
=LET(a;A2:A7;b;B2:B7;c;ARALIKBİRLEŞTİR(MAP(a;b;LAMBDA(x;y;LET(p;UZUNLUK(x);ARALIKBİRLEŞTİR(PARÇAAL(x;AL(SIRALAÖLÇÜT(SIRALI(p);RASGDİZİ(p));y);1))))));d;TOPLA(b);ARALIKBİRLEŞTİR(PARÇAAL(c;SIRALAÖLÇÜT(SIRALI(d);RASGDİZİ(d));1)))
 
Katılım
9 Şubat 2022
Mesajlar
135
Excel Vers. ve Dili
Ofis 2021 TR 64 Bit
Altın Üyelik Bitiş Tarihi
09-02-2027
Hiçkimseye dönüş yapmadınız.
 
Üst