Перекодировка из Oem в Ansi и обратно
Люди, как в VBA сделать перекодировку текстовой строки из OEM в ANSI и обратно?
Цитата:
Originally posted by free_lexx
Люди, как в VBA сделать перекодировку текстовой строки из OEM в ANSI и обратно?
Люди, как в VBA сделать перекодировку текстовой строки из OEM в ANSI и обратно?
Посмотрел в API - никак, только ручками %) Берешь 2 таблички и поехали! (рутинная это работа, но ничего не поделать)
Declare Function CharToOemBuff Lib "user32" Alias "CharToOemBuffA" (ByVal lpszSrc As String, ByVal lpszDst As String, ByVal cchDstLength As Long) As Long
Declare Function OemToCharBuff Lib "user32" Alias "OemToCharBuffA" (ByVal lpszSrc As String, ByVal lpszDst As String, ByVal cchDstLength As Long) As Long
Public Function ToAnsi(s As String) As String
Dim Buffer As String
Buffer = Space(Len(s) + 1)
OemToCharBuff s, Buffer, Len(s)
ToAnsi = Left(Buffer, Len(s))
End Function
Public Function ToOEM(s As String) As String
Dim Buffer As String
Buffer = Space(Len(s) + 1)
CharToOemBuff s, Buffer, Len(s)
ToOEM = Left(Buffer, Len(s))
End Function