Открыть файл дбф в экселе

Программирование на Visual Basic for Applications
bbs
Начинающий
Начинающий
 
Сообщения: 9
Зарегистрирован: 26.03.2004 (Пт) 15:21

Открыть файл дбф в экселе

Сообщение bbs » 02.12.2004 (Чт) 19:33

Подскажите пожалуйста, почему когда я открываю файл дбф в экселе появляется непонятный шриф.
Вопрос как поменять кодировку открываемого файла?
Спасибо.

TEH3OP
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 143
Зарегистрирован: 12.12.2003 (Пт) 20:19
Откуда: Москва

Re: Открыть файл дбф в экселе

Сообщение TEH3OP » 08.12.2004 (Ср) 12:08

bbs писал(а):Подскажите пожалуйста, почему когда я открываю файл дбф в экселе появляется непонятный шриф.

Потому что, строки в dbf в DOS ASCII коде, ммм... я б даж сказал в OEM_ASCII коде, а ёксель все знаки в мастдайной кодировке читает.
bbs писал(а):Вопрос как поменять кодировку открываемого файла?
Спасибо.

Кодировка прописана в заголовке DBF'а, который в VB мона так представить:
Код: Выделить всё
Public Type DBF_FILEHEADER
    FileType As Byte
    UpdateYear As Byte
    UpdateMonth As Byte
    UpdateDay As Byte
    RecordsCount As Long
    HeaderSize As Integer
    RecordSize As Integer
    Flags As Long
    MultiUserEnvoitment(11) As Byte
    IsUseIndex As Byte
    CodePage As Byte
    Reserved As Integer
End Type

В CodePage кодировочка и прописана и прописана она там так:
&H01 -- кодовая страница 437 DOS USA
&H02 -- кодовая страница 850 DOS Multilang
&H26 -- кодовая страница 866 DOS Russian
&H57 -- кодовая страница 1251 Windows ANSI
&HC8 -- кодовая страница 1250 Windows EE
&H00 -- секретно волшебная кодировка ;-)
Все остальные значения -- зе есть номер драйвера языка.

bbs
Начинающий
Начинающий
 
Сообщения: 9
Зарегистрирован: 26.03.2004 (Пт) 15:21

Сообщение bbs » 08.12.2004 (Ср) 18:57

Пожалуйста, код на vba как это сделать.


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5

    TopList