Импорт CSV-файлов Excel обработка строк чисел в кавычках как числовых значений, а не строк

у меня есть веб-приложение, которое экспортирует данные в CSV-файл. Вот один пример строки файла CSV в вопросе:

28,"65154",02/21/2013 00:00,"false","0316295","8316012,8315844","MALE"

<!-Поскольку я не могу опубликовать изображение, мне придется объяснить результаты в Excel. Поле "0316295" превращается в число, а ведущий 0 исчезает. "8316012,8315844" интерпретируется как одно число: 83,160,128,315,844. Это, совершенно очевидно, не предполагаемый результат.

Я видел, что люди рекомендуют ведущие одиночная цитата Для таких случаев, но это тоже не работает.

28,"65154",02/21/2013 00:00,"false","'0316295","'8316012,8315844","MALE"

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

импорт, похоже, не то же самое, что ввод.

у кого-нибудь есть решение?

6
задан Carl B
09.03.2023 22:15 Количество просмотров материала 3622
Распечатать страницу

6 ответов

Это должно работать

28,"65154",02/21/2013 00:00,"false",="0316295","=""8316012,8315844""","MALE"
9
отвечен Alex P. 2023-03-11 06:03

чтобы сохранить начальный ноль(ы), можно задать формат этого столбца для текста в Мастере импорта текста.

  1. начать Мастер Импорта Текста на Data tab & щелчок Текст.
  2. Выберите файл CSV, который вы хотите импортировать.
  3. выберите разделителями & hit далее.
  4. убрать Tab (по умолчанию). Выберите запятая. Делать конечно Квалификатор Текста установлено значение ". Хит далее.
  5. здесь вы можете указать форматы. Щелкните заголовок столбца, ведущий нуль которого требуется сохранить. Выберите Text. (См. изображение ниже)

    enter image description here

  6. нажмите готово & выберите подходящее место для ваших данных. Образец результат:

    enter image description here

Edit:есть другой способ; экспорт веб-приложение с запятыми .TXT файл вместо .CSV (или просто измените расширение экспортируемого файла после его сохранения). Это заставляет Excel пройти через мастер импорта при открытии файла. В качестве дополнительного преимущества, это уменьшает вероятность того, что пользователи изменяют или подделать исходные необработанные данные.

12
отвечен Ellesa 2023-03-11 08:20

Excel обрабатывает числовые значения, начинающиеся с символа табуляции в текст.

<tabchar>000000100000200000,ABC,DEF

будет выглядеть следующим образом:

000000100000200000|ABC|DEF

| граница ячейки(для иллюстрации). Так, например, если ваша система генерирует CSV-файл, используя кодировку UTF-8, вы можете добавить &#x0009; (символ табуляции в Hex) перед числовым значением, чтобы заставить excel интерпретировать его как текст.

3
отвечен Madeyedexter 2023-03-11 10:37

Excel будет автоматически определять формат поля CSV, если столбец CSV имеет следующий формат:

"=""Data Here"""

Это также работает для Google Таблиц

1
отвечен Chris Halcrow 2023-03-11 12:54

вы должны использовать" данные -> получить внешние данные -> импорт текста из файла " функциональность в Excel, чтобы получить его отображается в виде текста. Это мастер импорта текста @Kaze.

единственный способ заставить excel отображать числа в виде текста из ввода, без необходимости что-либо делать, - это вывести файл excel и указать в нем "пользовательский формат чисел". Я рекомендую использовать для этого библиотеку экспорта XLS, поскольку это не так просто, как добавление строки конфигурации текст в CSV файл.

0
отвечен Magne 2023-03-11 15:11

попробуйте функцию очистки для значений, которые перепутались. Например =чистый("12345678901234567890"). Это работает для меня для чисел, дат, времени и т. д. Я хотел бы предостеречь, что, поскольку это вовсе не цель этой функции, что это может перестать работать с новыми версиями и т. д.

0
отвечен Mark Prather 2023-03-11 17:28

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх