Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Кодировка при открытии .db файла в Excel 2007 / 2 сообщений из 2, страница 1 из 1
14.08.2012, 15:49
    #37916170
Мимик
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка при открытии .db файла в Excel 2007
Здравствуйте. Открываю в excel 2007 db файл. Файл открывается отлично, только все кириллические символы превратились в кракозябры. Есть макрос
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
Sub Макрос1()
    Dim source As String, dest As String
  source = Range("DI2").Text
   dest = ChangeTextCharset(source, "Windows-1251", "UTF-8")
     MsgBox "Ðåçóëüòàò ïåðåêîäèðîâêè: """ & dest & """", vbInformation, "Èñõîäíàÿ ñòðîêà: """ & source & """"
End Sub

Function ChangeFileCharset(ByVal filename$, ByVal DestCharset$, Optional ByVal SourceCharset$) As Boolean
    On Error Resume Next: Err.Clear
     With CreateObject("ADODB.Stream")
         .Type = 2
         If Len(SourceCharset$) Then .Charset = SourceCharset$
        .Open
         .LoadFromFile filename$
        FileContent$ = .ReadText
        .Close
         .Charset = DestCharset$
        .Open
         .WriteText FileContent$
         .SaveToFile filename$, 2
        .Close
     End With
     ChangeFileCharset = Err = 0
End Function

Function ChangeTextCharset(ByVal txt$, ByVal DestCharset$, Optional ByVal SourceCharset$) As String
    On Error Resume Next: Err.Clear
     With CreateObject("ADODB.Stream")
         .Type = 2: .Mode = 3
         If Len(SourceCharset$) Then .Charset = SourceCharset$
        .Open
         .WriteText txt$
         .Position = 0
         .Charset = DestCharset$
        ChangeTextCharset = .ReadText
         .Close
     End With
End Function


Испробовал разные кодировки (DOS 866, UTF-7, Cyrillic и т.д.), но не получается. Просто не понимаю какую кодировку использовать. А может в макросе проблема? Файл в аттаче
...
Рейтинг: 0 / 0
20.08.2012, 03:20
    #37922406
ZVI
ZVI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка при открытии .db файла в Excel 2007
Попробуйте так:
Код: vbnet
1.
2.
3.
Sub Test()
  Workbooks.OpenDatabase "C:\Temp\PRJINF8.DB", "PRJINF8", xlCmdTable, ImportDataAs:=xlTable
End Sub


В "C:\Temp\PRJINF8.DB" нужно подкорректировать путь.
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Кодировка при открытии .db файла в Excel 2007 / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]