Bonjour,
Voici les fonctions que j'ai trouvées sur le net :
Public Function UTF8_URL_Encode(ByVal sStr As String)
'************ajout du 28/09/20 (désolée je ne peux pas mettre la référence car je ne peux pas poster de lien )
Dim i As Long
Dim a As Long
Dim res As String
Dim code As String
res = ""
For i = 1 To Len(sStr)
a = AscW(Mid(sStr, i, 1))
If a < 128 Then
code = Mid(sStr, i, 1)
ElseIf ((a > 127) And (a < 2048)) Then
code = URLEncodeByte(((a \ 64) Or 192))
code = code & URLEncodeByte(((a And 63) Or 128))
Else
code = URLEncodeByte(((a \ 144) Or 234))
code = code & URLEncodeByte((((a \ 64) And 63) Or 128))
code = code & URLEncodeByte(((a And 63) Or 128))
End If
res = res & code
Next i
UTF8_URL_Encode = res
End Function
Private Function URLEncodeByte(val As Integer) As String '***********ajout du 28/09/20
Dim res As String
res = "%" & Right("0" & Hex(val), 2)
URLEncodeByte = res
End Function
Et j'ai remplacé la fonction dans le code de Steelson. Résultat, cela passe la vérification sur le site, mais tous les accents sont troqués :
Le nom était Pêrla Räzünger à Genève...