Pessoal estou com um problema, esse código abaixo é para gerar senhas aleatórias. Porém quando chega a 117 registro o sistema trava.
Option Compare Database
Sub geraSenha()
Dim tamanhoSenha As Integer
Dim codigo As Integer
Dim soma As Integer
Dim senha As String
Dim booOk As Boolean
Dim rs As Recordset
tamanhoSenha = txtTamanhoSenha
booOk = False
senha = ""
codigo = 0
soma = 0
Dim Letra(22)
Letra(0) = "A"
Letra(1) = "B"
Letra(2) = "C"
Letra(3) = "D"
Letra(4) = "E"
Letra(5) = "F"
Letra(6) = "G"
Letra(7) = "H"
Letra( = "I"
Letra(9) = "J"
Letra(10) = "K"
Letra(11) = "M"
Letra(12) = "N"
Letra(13) = "O"
Letra(14) = "P"
Letra(15) = "Q"
Letra(16) = "R"
Letra(17) = "S"
Letra(18) = "T"
Letra(19) = "U"
Letra(20) = "V"
Letra(21) = "X"
Letra(22) = "Z"
Do While booOk = False
Do While Len(senha) < tamanhoSenha
codigo = Int(Rnd * 22) + 1
If InStr(1, senha, Letra(codigo)) = 0 Then
soma = soma + codigo
senha = senha & Letra(codigo)
End If
Loop
Set rs = CurrentDb.OpenRecordset("SELECT COUNT(codigo) AS c FROM tblSenhas WHERE soma = " & soma & "")
If rs!c = 0 Then
booOk = True
Dim rs1 As Recordset
Set rs1 = CurrentDb.OpenRecordset("tblSenhas")
rs1.AddNew
rs1("senha") = senha
rs1("soma") = soma
rs1.Update
rs1.Close
txtSenhaGerada = senha
End If
codigo = 0
soma = 0
senha = ""
Loop
End Sub
Private Sub btnGerar_Click()
Call geraSenha
Me.contador = DCount("senha", "tblSenhas")
End Sub
Desda já agradeço!
Option Compare Database
Sub geraSenha()
Dim tamanhoSenha As Integer
Dim codigo As Integer
Dim soma As Integer
Dim senha As String
Dim booOk As Boolean
Dim rs As Recordset
tamanhoSenha = txtTamanhoSenha
booOk = False
senha = ""
codigo = 0
soma = 0
Dim Letra(22)
Letra(0) = "A"
Letra(1) = "B"
Letra(2) = "C"
Letra(3) = "D"
Letra(4) = "E"
Letra(5) = "F"
Letra(6) = "G"
Letra(7) = "H"
Letra( = "I"
Letra(9) = "J"
Letra(10) = "K"
Letra(11) = "M"
Letra(12) = "N"
Letra(13) = "O"
Letra(14) = "P"
Letra(15) = "Q"
Letra(16) = "R"
Letra(17) = "S"
Letra(18) = "T"
Letra(19) = "U"
Letra(20) = "V"
Letra(21) = "X"
Letra(22) = "Z"
Do While booOk = False
Do While Len(senha) < tamanhoSenha
codigo = Int(Rnd * 22) + 1
If InStr(1, senha, Letra(codigo)) = 0 Then
soma = soma + codigo
senha = senha & Letra(codigo)
End If
Loop
Set rs = CurrentDb.OpenRecordset("SELECT COUNT(codigo) AS c FROM tblSenhas WHERE soma = " & soma & "")
If rs!c = 0 Then
booOk = True
Dim rs1 As Recordset
Set rs1 = CurrentDb.OpenRecordset("tblSenhas")
rs1.AddNew
rs1("senha") = senha
rs1("soma") = soma
rs1.Update
rs1.Close
txtSenhaGerada = senha
End If
codigo = 0
soma = 0
senha = ""
Loop
End Sub
Private Sub btnGerar_Click()
Call geraSenha
Me.contador = DCount("senha", "tblSenhas")
End Sub
Desda já agradeço!