Just complementing..

If you want to show correctly UTF-8 in Excel probably you will have to convert it the other way:

Private Declare Function WideCharToMultiByte Lib "kernel32" (ByVal CodePage As Long, ByVal dwFlags As Long, ByVal lpWideCharStr As Long, ByVal cchWideChar As Long, ByVal lpMultiByteStr As Long, ByVal cchMultiByte As Long, ByVal lpDefaultChar As Long, ByVal lpUsedDefaultChar As Long) As Long

Public Function WideChar_Encode(ByVal instring As String) As String

Dim i, L As Long
Dim temp As String

L = Len(instring)
temp = String(L * 2, 0)

i = MultiByteToWideChar(CP_UTF8, 0, instring & Chr(0), -1, temp, L)
If i > 0 Then
WideChar_Encode = StrConv(Left(temp, (i - 1) * 2), vbFromUnicode)
i = InStr(WideChar_Encode, Chr(0))
If i Then WideChar_Encode = Left(WideChar_Encode, i - 1)
Else
WideChar_Encode = instring
End If

End Function
_________________________
Sgrillo

Free GoogleEarth Tools:
http://www.sgrillo.net/googleearth/