'Это нам пригодится для удобного рандомайза
Public Function GenRndNumber(ByVal Lower%, ByVal Upper%)
Randomize
GenRndNumber = Int((Upper% - Lower% + 1) * Rnd + Lower%)
End Function
'Эта функция будет принимать строку и возвращать изменённую
Private Function OLOLO(ByVal STR$)
'Рандомим, какой символ заменять будем
ONCEMORE:
Dim SymbolNum% = GenRndNumber(0, STR.Length)
Dim MODE% = 1
Dim N$ = "", S$ = ""
'Ахалай-махалай..
N = Microsoft.VisualBasic.Right(STR, SymbolNum)
MODE = GenRndNumber(1, 3)
If N.Length > 1 Then
STR = STR.Replace(N.Remove(0, 1), "")
S = N.Remove(1)
Else : GoTo ONCEMORE
End If
If S = "-" Then GoTo ONCEMORE
Select Case MODE
'Меняем на цифру
Case 1 : OLOLO = STR.Replace(S, Chr(GenRndNumber(Asc("0"), Asc("9")))) & N.Remove(0, 1)
'Меняем на букву верхнего регистра
Case 2 : OLOLO = STR.Replace(S, Chr(GenRndNumber(Asc("A"), Asc("Z")))) & N.Remove(0, 1)
'Меняем на букву нижнего регистра
Case Else : OLOLO = STR.Replace(S, Chr(GenRndNumber(Asc("a"), Asc("z")))) & N.Remove(0, 1)
End Select
End Sub