90

Когда я дважды щелкаю файл .csv, он открывается в Excel. В csv-файлах есть столбцы, разделенные точками с запятой (не запятые, но также допустимый формат).

При использовании немецкой настройки Windows/Excel, открытый файл отображается правильно, столбцы разделяются там, где в csv-файле существовала точка с запятой.

Но когда я делаю то же самое в английской (Windows-) настройке Windows/Excel, импортируется только один столбец, показывающий все данные, включая точки с запятой в первом столбце.
(У меня нет настроек английского языка для тестов, пользователи сообщили о поведении)

Я пытался изменить значение разделителя списка в региональных настройках Windows, но это ничего не изменило.

Что я могу сделать, чтобы иметь возможность дважды щелкнуть по этим CSV-файлам на английском языке?

РЕДАКТИРОВАТЬ:
Похоже, в этом случае лучшее решение не полагаться на CSV-файлы. Я надеялся, что есть какой-то формат для CSV-файлов, который позволит использовать их на международном уровне.
Лучшим решением кажется, что я перейду к созданию XLS-файлов.

6 ответов6

191

Добавьте это в первую строку файла CSV:

sep=;

или же

sep=,

Это переопределит системные настройки ("символ разделителя списка"), и Excel откроет файл правильно.

26

Вы можете использовать Мастер импорта текста. Это не работает при двойном щелчке, но это лучшее, что я могу придумать, это не связано с манипуляциями с настройками языка.

В Excel 2003 выберите « Data -> « Import External Data -> « Import Data в строке меню (не могу сказать, где он находится в 2007 году, сейчас у меня нет этого). Найдите и выберите файл CSV.

Когда он откроется, вы получите Text Import Wizard , который позволит вам указать разделители для использования.

6

Смотрите эту статью:
Проблемы с открытием файлов CSV в Excel? Проблема с запятой и точкой с запятой в Excel из-за региональных настроек для Европы

Который предлагает 3 решения:

  • Измените расширение файла CSV на TXT (когда вы откроете файл TXT в Excel, он запустит мастер импорта текстовых файлов, в котором вы сможете выбрать разделитель)
  • Замените все «,» на «;» в ваших файлах CSV
  • Измените региональные и языковые настройки

Поскольку вы изменили только значение разделителя списка в региональных настройках Windows, я отмечаю, что в статье говорится, что нужно вводить «.» Для Decimal Symbol и «,» для List Separator .

Если вы чувствуете себя комфортно с VBA, то смотрите:

Открытие файла CSV с разделителями точкой с запятой в VBA в Excel 2000
Экспорт и импорт текста в Excel

3

Лучший способ, который я попробовал, - установить региональные настройки вашего компьютера, как показано ниже:

  • в поле "Стандарты и форматы" выберите «Английский (США)»;
  • в разделе "Локации" выберите "США".

Это работает для меня, просто попробуйте.

2

Эти файлы распространяются? скачал? Локально генерируется?

Я думаю, что единственный способ решить вашу проблему без доступа к ПК пользователя и без него, чтобы сделать что-то отличное от «двойного щелчка» на файле, - это преобразовать файлы в .xls перед распределением или размещением для загрузки или создания .xls (или другой формат, который работает) вместо файла .csv. Вы можете сделать это с помощью скрипта или вручную с рабочим Excel, в зависимости от количества файлов и способа их создания.

0

Если в файле нет других запятых, вы можете просто найти / заменить в текстовом редакторе точки с запятой, чтобы превратить их в запятые. Обрабатывать как нормальный CSV-файл после этого.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .