Страницы: 1
RSS
Изменить кодировку с ANSI на кодировку UTF-8 (+)
 
Есть файл ексель в кодировке  ANSI, надо переделать на  UTF-8. Каким образом возможно это сделать?
 
а его можно увидеть?
 
Подождем точного ответа экспертов, но насколько я знаю - никак.  
В эксель 2007 Сохранить как поддерживает Юникод, но не UTF-8.  
 
Как вариант, если листов для конвертации очень много и нет желания каждый лист вручную конвертить в нотепаде и тп редакторах, то можно:  
1. все листы книги макросом сохранить в формат txt в отдельную папку (один лист - один txt-файл)  
2. обработать полученные txt файлы какой-нибудь прогой для массовой конвертации (например, TextPipe и тп)  
3. макросом загрузить полученные UTF-файлы в книгу
 
'Другие HKEY_CASSES_ROOT\MIME\Database\Charset  
Const codepageWin1251 = "windows-1251"  
Const codepageDOS866 = "cp866"  
Const codepageKOI8R = "koi8-r"  
Const codepageUTF7 = "utf-7"  
Const codepageUTF8 = "utf-8"  
 
Const adWriteChar = 0  
Const adTypeText = 2    
Const adSaveCreateOverWrite = 2  
 
Dim pStream As Object, sTxt As String  
 
Set pStream = CreateObject("ADODB.Stream")  
pStream.Type = adTypeText  
 
pStream.Charset = codepageWin1251  
pStream.Open  
pStream.LoadFromFile "c:\test\ansi.txt"  
sTxt = pStream.ReadText    
pStream.Close  
 
pStream.Charset = codepageUTF8  
pStream.Open  
pStream.WriteText sTxt, adWriteChar  
pStream.SaveToFile "c:\test\utf-8.txt", adSaveCreateOverWrite  
pStream.Close
 
Это как я понимаю-макрос который надо вставить в файл, чтобы произвести перекодировку? К сожалению, я в этом совсем не силен. Т.е. простыми средствами ексель - никак. Извиняюсь за свою безграмотность...  
Прилагаю файл.
 
Я предполагал, что под файлом Excel подразумевался текстовый файл с разделителями.  
Можно, конечно, подобным же образом перекодировать текстовые значения яеек. Только какой в этом смысл?
 
Здесь вы можете найти функции для перекодировки текста или файла:  

http://excelvba.ru/code/Encode

 
пытаюсь использовать функцию ChangeFileCharset (по ссылке выше) для конвертации файла .xml с кодировкой ANSI в кодировку UTF-8 и что-то не выходит.    
на этапе FileContent$ = .ReadText текст становится иероглифами.  
 
помогите пожалуйста
 
вот пример
 
всё, решил вопрос - применил к каждой строке функцию смены кодировки
Страницы: 1
Наверх