Страница: 1 |
Страница: 1 |
Вопрос: Как из Excel писать файл в DOS кодировке?
Добавлено: 17.04.07 19:02
Автор вопроса: Romaryo | ICQ: 199095764
Подскажите пожалуйста какая команда или функция или... имеется в VBA чтобы не писать по умолчанию в windows кодировке, мне нужно в DOS.
Заранее благодарен
Ответы
Всего ответов: 2
Номер ответа: 1
Автор ответа:
Arseny
ICQ: 298826769
Вопросов: 53
Ответов: 1732
Профиль | | #1
Добавлено: 17.04.07 19:48
Из описания API "Русский проект":
Declare Function CharToOem Lib "user32" Alias "CharToOemA" (ByVal lpszSrc As String, ByVal lpszDst As String) As Long
Платформа
Windows 95/98: Поддерживается.
Windows NT: Требуется Windows NT 3.1 или выше.
Windows 2000: Поддерживается.
CharToOem конвертирует текст из win-кодировки в dos-кодировку.
Возвращаемое значение
Функция всегда возвращает ненулевое значение
Параметры
lpszSrc
Строка для перекодировки.
lpszDst
Перекодированая строка в буфере. Если функция CharToOem используется как функция ANSI, строка может быть переведена на месте, устанавливая параметр lpszDst в тот же адрес,что и параметр lpszSrc .
Пример
' конвертируем строку "Русский_Проект!" в dos-кодировку.
Dim sourcestring As String ' нужная строка
Dim deststring As String ' получаемая строка
Dim code As Long
sourcestring = "Русский Проект" 'строка для перекодировки
deststring = Space$(Len(sourcestring))'получаем перекодированную строку
code = CharToOem(sourcestring, deststring)
Debug.Print deststring
Схожие функции
OemToChar
Номер ответа: 2
Автор ответа:
Arseny
ICQ: 298826769
Вопросов: 53
Ответов: 1732
Профиль | | #2
Добавлено: 17.04.07 20:07
Хм... Еще вариант вспомнил: когда я не знал что такое API, я распечатал 2 таблицы символов - ASCII и ANSI, глядя на них ясно, как преобразовать букву из одной кодировки в другую. простенький модуль и все. Просто, если большие объемы, то это будет долговато, т.к. надо считывать посимвольно.... и т.д.