Форум программистов, компьютерный форум, киберфорум
PowerShell
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
0 / 0 / 0
Регистрация: 17.02.2017
Сообщений: 9
1

Экспорт русского текста в EXCEL

28.02.2017, 00:45. Просмотров 2180. Ответов 6
Метки нет (Все метки)

Добрый вечер.
Импорт данных идет из CSV файла (в том числе текст)
Экспорт в XLSX.

Если в CSV писать русскими буквами на выходе в EXCEL знаки вопроса, если английскими, все нормально.
Можно ли и как добавить -Encoding в импортируемый файл, чтоб была UTF8. Через блокнот показывает что сейчас ANSI.
Ну или как то решить проблему чтоб можно было пользоваться русским текстом.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.02.2017, 00:45
Ответы с готовыми решениями:

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

Экспорт нескольких Excel файлов в один Excel файл
Здравствуйте! Помогите пожалуйста с реализацией макроса (осилил только загрузку с одного...

Экспорт-импорт данных Excel-Access-Excel
Доброе время суток уважаемые форумчане. Приходит информация в экселевской таблице. Скидываю её в...

Экспорт данных из таблицы Excel в шаблон Excel
Добрый день! Проблемка заключается в следующем: В папке debug во вложении есть файл...

6
Любознательный
1717 / 740 / 212
Регистрация: 10.03.2016
Сообщений: 1,729
28.02.2017, 09:16 2
Цитата Сообщение от Sergeisss Посмотреть сообщение
Если в CSV писать русскими буквами на выходе в EXCEL знаки вопроса, если английскими, все нормально.
Можно ли и как добавить -Encoding в импортируемый файл, чтоб была UTF8.
А где сам код и пример исходного файла?
0
0 / 0 / 0
Регистрация: 17.02.2017
Сообщений: 9
28.02.2017, 10:01  [ТС] 3
Цитата Сообщение от YuS_2 Посмотреть сообщение
А где сам код и пример исходного файла?
Импорт:
PowerShell
1
2
3
4
5
6
7
$csv_in= ".\File_in.csv"
$export_array = @()
 
 
Import-Csv $csv_in -Delimiter ";" |
    Foreach {
        $text = $($_.text)
Экспорт:
PowerShell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
$export_array += @{"text"="$text"}
}
    $excel = New-Object -ComObject Excel.Application
    $excel.Visible = $true
    $EWB = $excel.Workbooks.Add()
    $EWS = $EWB.Worksheets.Item(1)
    $EWS.Name = 'Страница'
    $j = 2
    
    Foreach($item1 in $export_array) 
    { 
    $EWS.Cells.Item($j,1) = $item1.text
    }
    $EWB.Saveas($xlsx_out)
    $EWB.Close()
    $excel.Quit()
P.S. Если прямо в шеле писать по русски что должно быть в ячейке, тоже все нормально. Проблема как я понял именно в том, что из CSV выгружает не в той кодировке, обрабатывает нормально (в шеле) а эксель уже при записи не может понять что такое.
0
771 / 420 / 137
Регистрация: 03.06.2009
Сообщений: 1,223
Записей в блоге: 4
28.02.2017, 11:02 4
Sergeisss, Если вы введете в строке хоста
PowerShell
1
man import-csv
То увидите, что у этого командлета есть переключатель -Encoding, который позволяет устанавливать кодировку при импорте. Такие дела.
0
0 / 0 / 0
Регистрация: 17.02.2017
Сообщений: 9
28.02.2017, 11:11  [ТС] 5
Цитата Сообщение от v_svitere Посмотреть сообщение
То увидите, что у этого командлета есть переключатель -Encoding, который позволяет устанавливать кодировку при импорте. Такие дела.
Да я пробовал, просто наверно не могу это правильно записать.
Подскажите как должна выглядеть в таком случае строка:

Import-Csv $csv_in -Delimiter ";" |

Просто в конец добавить -Encoding UTF8 чтоб получилось

Import-Csv $csv_in -Delimiter ";" | -Encoding UTF8

Так?
0
771 / 420 / 137
Регистрация: 03.06.2009
Сообщений: 1,223
Записей в блоге: 4
28.02.2017, 11:16 6
Sergeisss,
Так?
Нет, До трубы
PowerShell
1
Import-Csv -Encoding UTF8  -Path $csv_in -Delimiter ";"| #code
1
0 / 0 / 0
Регистрация: 17.02.2017
Сообщений: 9
28.02.2017, 11:21  [ТС] 7
Цитата Сообщение от v_svitere Посмотреть сообщение
Import-Csv -Encoding UTF8 *-Path $csv_in -Delimiter ";"| #code
Спасибо! Все получилось.
Правда не с UTF8, а поставил Default и все стало читаемо.
Супер
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.02.2017, 11:21

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Excel -> Access -> Excel, импорт - экспорт
Добрый день! Есть табель учета рабочего времени в таблице Excel, задача - переместить данные со...

Озвучка русского текста
Добрый день. Подскажите пожалуйста по следующему вопросу. Требуется озвучить русский текст....

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

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.