Крякозябры при сохранении в Excel

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
ZOD
Обычный пользователь
Обычный пользователь
 
Сообщения: 75
Зарегистрирован: 24.03.2004 (Ср) 19:54
Откуда: Barnaul

Крякозябры при сохранении в Excel

Сообщение ZOD » 08.08.2007 (Ср) 10:12

Скачал откуда-то с интернета дллки для работы из VB c Excel-евскими файлами, без самого Excel. Штука суперская, можно делать все тоже, что и с помощью VBA, но намного удобней.
Но возникла проблема: вместо русских букв в ячейках появляются иероглифы, причем изменение кодировки на ANSI_Cirillyc в свойствах не помогает.
Когда установил в первый раз, с русскими буквами было все хорошо, но после переустановки винды, да и на всех остальных компах, появилась эта проблема.
Подскажите, пожалуйста, как это можно исправить. Библиотеки и исходники во вложении.
Вложения
Excel8Libs.rar
Библиотеки для работы с xls файлами без установленного Excel
(925.61 Кб) Скачиваний: 216
Example.rar
Пример использования
(2.5 Кб) Скачиваний: 83

ZOD
Обычный пользователь
Обычный пользователь
 
Сообщения: 75
Зарегистрирован: 24.03.2004 (Ср) 19:54
Откуда: Barnaul

Сообщение ZOD » 10.08.2007 (Пт) 7:09

Ребята, может будут какие-нибудь идеи, что-нибудь попробовать?
Очень нужно!
Заранее спасибо.

gjghjc
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 659
Зарегистрирован: 13.10.2002 (Вс) 8:28
Откуда: БАЛАКЛАВА!!

Сообщение gjghjc » 10.08.2007 (Пт) 9:32

Может какого шрифта не хватает???
Утро добрым не бывает!

ZOD
Обычный пользователь
Обычный пользователь
 
Сообщения: 75
Зарегистрирован: 24.03.2004 (Ср) 19:54
Откуда: Barnaul

Сообщение ZOD » 10.08.2007 (Пт) 12:17

Со шрифтами все в порядке. Там есть возможность выбора. Ни с одним шрифтом корректно сохранить не получилось.

kinrew
Новичок
Новичок
 
Сообщения: 26
Зарегистрирован: 15.02.2006 (Ср) 18:02
Откуда: Москва

Сообщение kinrew » 10.08.2007 (Пт) 12:53

Попробуй вот это: http://maxoness.h16.ru/windows/registry/regs.html
А именно:
Порой бывает, что в основном русские буквы отображаются нормально, но в некоторых программах, в частности продуктах фирмы Adobe, вместо русских букв иероглифы. Это возникает из-за неправильного отображения кодировок. Данный reg-файл позволяет устранить проблему отображения русских букв:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage]
"1252"="c_1251.nls"
-= reg file =-

У меня на компьютере русские буквы в коде Visual Basic печатались как китайские :) . Данная операция помогла.

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 10.08.2007 (Пт) 20:11

Это забавно.
Все просто ставят шрифт Courier Cyr, а kinrew правит реестр, гробя нормальную работу некоторых других программ.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Me!
Новичок
Новичок
 
Сообщения: 35
Зарегистрирован: 05.08.2007 (Вс) 21:35

Сообщение Me! » 10.08.2007 (Пт) 20:39

некоторых других программ.

приведи пример, пожалуйста! я тоже так иногда исправляю, хотелось бы знать каких сюрпризов ждать.

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Сообщение iGrok » 11.08.2007 (Сб) 18:41

Да не надо особо ждать сюрпризов, их не будет... Я не припомню, чтобы чем-то использовалась win-1252... Но чисто теоретически, они могут возникнуть.
label:
cli
jmp label

ZOD
Обычный пользователь
Обычный пользователь
 
Сообщения: 75
Зарегистрирован: 24.03.2004 (Ср) 19:54
Откуда: Barnaul

Сообщение ZOD » 13.08.2007 (Пн) 8:46

К сожалению способ, предложенный kinrew не сработал.
При выставлеии CharSet`a на csSynbolic в ячейках значение пишется на русском языке, но в строке формул так - ÇÀßÂÊÀ.
Может быть можно как-то кодами символы задавать? Или заменить эти длл-ки на что-нибудь другое? Какие еще есть способы сохранения в Excel без использования VBA?

kinrew
Новичок
Новичок
 
Сообщения: 26
Зарегистрирован: 15.02.2006 (Ср) 18:02
Откуда: Москва

Сообщение kinrew » 13.08.2007 (Пн) 9:03

Там при открытии файла на запись или при самой записи можно выбирать кодировку записи?
Как-то мне нужно было в текстовый файл писать строки, так тоже "кракозябры" получались, а оказалось что нужно было выставить необязательный параметр True в операторе открытия (последний параметр):
Код: Выделить всё
Set txtTempFile = FSO.CreateTextFile(fldPRSFolder.Path & "\docs.w", , True)

Тогда он начинал писать в юникоде и текст нормально читался

ZOD
Обычный пользователь
Обычный пользователь
 
Сообщения: 75
Зарегистрирован: 24.03.2004 (Ср) 19:54
Откуда: Barnaul

Сообщение ZOD » 13.08.2007 (Пн) 12:21

kinrew
Да, есть. В формате ячейки можно выбрать набор символов. Но она не работает.


Вернуться в Visual Basic 1–6

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

Сейчас этот форум просматривают: Majestic-12 [Bot] и гости: 96

    TopList