Вопрос Самый простой способ открыть CSV с запятыми в Excel


Файлы CSV автоматически связаны с Excel, но когда я их открываю, все строки находятся в основном в первом столбце, например:

enter image description here

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

Теперь, когда я уже открыл этот файл в Excel, есть ли кнопка или что-то сказать «повторно открыть этот файл и использовать запятую в качестве разделителя»?

Я знаю, что могу импортировать данные в новый рабочий лист и т. Д., Но я прошу конкретно о помощи в ситуации, когда у меня уже есть файл CSV с запятыми, и я хочу открыть его в Excel без создания новой книги или преобразования исходный файл.


178
2018-03-31 20:39


происхождения


По ряду причин, помимо только разделителя, очень сложно позволить Excel открыть CSV (или любой другой текстовый файл) с использованием настроек по умолчанию. В зависимости от вашего исходного файла вы будете повреждены ваши данные. Я написал подробную статью по этому поводу здесь: theonemanitdepartment.wordpress.com/2014/12/15/... - Wouter
Трудно понять, что должно происходить внутри Microsoft, что Excel все еще не может открыть CSV-файлы именно так. Он также разбивает числа и т. Д. Удивительными способами. Даже JavaScript не подразумевает, что это плохо отражается. - usr
Извините за серьезный рог .. но есть очень хороший шанс, что ваша первая строка не имеет никаких запятых, заставляет Excel отказаться от попытки - patricktokeeffe


ответы:


Перейти к Данные и выберите текст в столбцы под инструменты для передачи данных затем выберите разделенный и ударил следующий, Затем выберите запятая как разделитель и ударил Конец

enter image description here


166
2018-03-31 20:44



И вы должны делать это каждый раз после двойного щелчка * .csv в Проводнике Windows? Я почему-то не могу поверить, что нет более простого способа, особенно если Excel ассоциируется с расширением * .csv. - Borek Bernard
Обычно мастер должен всплывать, чтобы вы делали этот процесс при открытии файла, но если это не так, вы можете сделать это таким образом. Вы также можете перейти к данным - получить внешние данные - из текста и запустить мастер импорта. - Raystafarian
В этом проблема, я не хочу Импортировать любые данные, я открываю совершенно правильный CSV-файл, с которым Excel даже ассоциировался. Но ОК, если это так, мне, вероятно, нужно будет найти что-то еще, чтобы редактировать CSV-файлы. - Borek Bernard
Да, это PITA, то же самое здесь с Excel 2003. Мне также нужно использовать Data \ Import. Не проблема сама по себе, но я делаю эти импорт только два раза в год, поэтому я регулярно забываю и попробую File / Open first ;-( - Jan Doggen
@gstackoverflow вы можете, просто выберите столбец A, а затем сделайте это. - Tom


Размещение:

sep=<delimeter>

так как первая строка вашего файла csv автоматически укажет Excel на использование этого символа в качестве разделителя вместо запятой по умолчанию.

Например:

sep=|
COLUMN1|COLUMN2
data,1|data2
...

приведет к тому, что pipe (|) будет использоваться в качестве деминера вместо запятой, без необходимости запуска пользователя через мастер импорта.


145
2018-03-18 15:27



Чтобы это работало в Excel 2013, вы должны снимите флажок  Use system separators в Options>Advanced - Michael Field
Можете ли вы определить десятичный разделитель аналогичным образом? Я хочу, чтобы это было ., например, для 1.5 но в моей системе . является разделителем для тысяч. - CGFoX
Это сработало для меня, даже если у меня есть «Использовать системные разделители». Никакое другое решение не работало для меня. - awe
Подтверждение того, что это работает в Excel 2016 с помощью «Использовать системные разделители». Отлично. - Bas
Отличное решение для глупой проблемы! (Excel должен уметь распознавать используемый разделитель или, по крайней мере, спрашивать меня, и разрешить мне решать!) Следующий: можно ли заставить Excel использовать другую кодировок также? Все мои CSV находятся в UTF-8, но Excel пытается открыть их как «Macintosh», что создает много проблем для меня !! - qualbeen


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

Оказывается, это вопрос региональной проблемы;

Войдите в панель управления -> Региональные настройки -> Расширенные настройки и измените разделитель списка на запятая,

После того, как я перешел на Windows 8, у меня была настроена точка с запятой. После того, как я изменил ее на запятую, все мои CSV открылись правильно с Excel 2013.

Надеюсь это поможет.

Дополнительный комментарий:
Я использовал те же шаги, что и Lèse majesté, но также изменил символ Decimal от запятой (,) до fullstop (.), И он исправил мою проблему.

Это связано с тем, что по умолчанию Windows 8 использует запятую как десятичный символ, и Excel запутывается, когда ему приходится использовать оба символа в качестве разделителя и десятичный символ.


47
2018-06-18 15:00



Уже установлено так и проигнорировано excel. Все еще не разделяется запятыми. - Elliot
Ir, вероятно, требует, по крайней мере, выхода из системы, вход в систему вступает в силу. - Gert van den Berg
Работал для меня после изменения десятичного символа, спасибо! - James Cameron
Ну, я все еще думаю, что это возмутительно, что Excel использует региональные настройки для чтения формата файла! - awe


Это то, что сработало для меня - это комбинация некоторых из ответов здесь.

(Примечание. Мой компьютер использует чешские настройки формата, которые форматируют такие номера: 1 000,00, т. е. запятая используется как разделитель десятичных чисел и пространство как разделитель тысяч. Разделитель по умолчанию в системных настройках ;.)

  1. Я изменил система Разделитель списков для запятой в регионе -> Дополнительные настройки
  2. В Excel 2013, я пошел в Options -> Advanced и непроверенный Использовать системные разделители (в разделе «Параметры редактирования», который является первым разделом)
  3. Я установил десятичный разделитель в Excel для . и разделитель тысяч , (разделитель тысяч, вероятно, не имеет значения, но я хотел, чтобы он соответствовал форматированию США)

Альтернативой шагам 2 + 3 будет изменение этих параметров в системных настройках (шаг 1), но я обычно хочу, чтобы номера были отформатированы в соответствии с чешским языком.

Downsides: в Excel мне нужно ввести десятичные числа, используя локаль США, т. е. используя точку вместо запятой. Это кажется немного неестественным, но приемлемым компромиссом для меня. К счастью, клавиша запятой на моей цифровой клавиатуре автоматически переключилась на точечный ключ (и только в Excel - другие приложения все еще выдают запятую).


19
2017-07-07 10:45



Он не работает с Excel 2010 / cz :-( - Leos Literak
@LeosLiterak: Я просто попробовал это в Excel 2013, но это сработало. - Sk8erPeter


По-видимому, Excel использует региональную настройку Windows 7 для разделителя по умолчанию для CSV (по умолчанию это вкладка). Ты можешь измените настройку таким образом,

Тем не менее, я не знаю, какие другие последствия у вас будут. Я полагаю, если все CSV-файлы на вашем компьютере разделены запятыми, тогда проблем не должно быть. Но если у вас есть другая (вероятно, Microsoft) программа, которая также использует CSV-файлы, и обычно использует CSV-файлы, отформатированные с другим разделителем, тогда это может быть проблематично.

Например. если, скажем, Outlook использует CSV с разделителями разделов для импорта / экспорта контактов, и вы получаете такие CSV-файлы из внешнего источника (Gmail, другой компьютер, независимо от ...), тогда изменение этого общесистемного параметра может помешать Outlook открыть эти разделенные запятыми CSV.


10
2018-04-01 00:38



Я попытался изменить свои «региональные и языковые настройки»> «Форматы»> «Дополнительные настройки»> «Разделитель списков», однако он не повлиял на открытие CVS-файлов в Excel. К сожалению, это не решение. - Borek Bernard
То же самое происходит с Excel 2010 и Windows 7. Это было уже в моих настройках, и Excel по-прежнему не выполняет вкладку. - rhsatrhs
Любая идея, если мы можем ввести 2 разных символа в этом поле на панели управления? Например. ;, чтобы оба символа отображались в виде навигационных карт? - hasMobi - Android Apps


LibreOffice Calc имеет очень продвинутый csv filter, который позволяет выбирать разделители, форматы и кодировки. Я активно работаю с данными в различных форматах и ​​очень часто должен отправлять эти данные в формате Excel пользователям. Я использую LibreOffice Calc для преобразования csv-файлов в желаемый формат, а затем сохраняю как xls.

Это может не ответить на то, как сделать это легко в Excel, но он отвечает, как сделать это легко, тем более, что OP в комментариях предполагает использование чего-то другого, кроме excel, приемлемым вариантом.


6
2017-10-02 14:17





Excel 2010 - В дополнение к проверке ваших региональных дополнительных настроек обязательно проверьте настройки Excel Advanced:

Файл -> Параметры -> Дополнительно

Убедитесь, что установлен флажок «Использовать системные разделители».


4
2018-01-31 18:06



Или, конечно, убедитесь, что это не если вы хотите импортировать что-то, что отличается от ваших региональных настроек. :-) Но: хорошо знать, что эта настройка существует; Я никогда не слышал об этом раньше. - Arjan
Эти настройки влияют только на разделители чисел, а не на разделитель списков. - Borek Bernard


Пошаговое руководство для недоумения:

  1. Нажмите клавишу Windows
  2. Тип "intl.cpl"и нажмите Enter.
  3. Нажмите "Дополнительные настройки».
  4. Перейдите в раздел "чисел"вкладка:
  5. Изменить Десятичный символ к точка,
  6. Изменить "Символ группировки цифр«к пространство,
  7. Изменить "Список разделителей«к запятая,
  8. Перейдите в раздел "валюта"вкладка:
  9. Изменить Десятичный символ к точка,
  10. Изменить "Символ группировки цифр«к пространство,

3
2017-11-21 12:19



Это нормально, если вы всегда используете свои созданные .CSV-файлы. Но это не работает, когда вы получаете файл от кого-то другого, который использовал запятую в качестве разделителя. - stevenvh