Вставляю этот макрос в Module1, запускаю, и вижу в ячейке B2 - #ЗНАЧ! и никак не могу в чем дело! ячейка A1- пустая, в ней нет ничего.
Код |
---|
Function GetHash(ByVal txt$) As String Dim oUTF8, oMD5, abyt, i&, k&, hi&, lo&, chHi$, chLo$ Set oUTF8 = CreateObject("System.Text.UTF8Encoding") Set oMD5 = CreateObject("System.Security.Cryptography.MD5CryptoServiceProvider") abyt = oMD5.ComputeHash_2(oUTF8.GetBytes_4(txt$)) For i = 1 To LenB(abyt) k = AscB(MidB(abyt, i, 1)) lo = k Mod 16: hi = (k - lo) / 16 If hi > 9 Then chHi = Chr(Asc("a") + hi - 10) Else chHi = Chr(Asc("0") + hi) If lo > 9 Then chLo = Chr(Asc("a") + lo - 10) Else chLo = Chr(Asc("0") + lo) GetHash = GetHash & chHi & chLo Next Set oUTF8 = Nothing: Set oMD5 = Nothing End Function |