Ответ 1
- переименуйте
csv
в.txt
- открыть excel
- перейдите в file--> откройте и укажите на свой txt файл
- выполните шаги по импорту
- обязательно используйте
;
как разделитель
У меня есть cvs со следующими значениями:
3271.96;274;272;1;1;0;1;0.071690;0;0;0;0;0;0;1.753130;1.75;0;1.75;
Но когда я открываю файл с помощью Excel, я получаю следующее:
3271.96 274 272 1 1 0 1 0.071690 0 0 0 0 0 0 1.753.130 1.75 0 1.75
Почему "1.753130" преобразуется в "1.753.130"? (1.753130 - десятичное число), как я могу "заставить" преуспеть, чтобы понять, что это десятичные числа?
Я создаю файл cvs с помощью веб-приложения, поэтому трудно просто изменить мою конфигурацию excel, потому что многие люди входят на мой сайт и загружают файл csv в свои машины
заранее спасибо
csv
в .txt
;
как разделительвот ответ, который я использовал:
перейдите на вкладку данных на листе Excel.
нажмите на кнопку " from Text
.
затем выберите текстовый или CSV файл.
тогда выйдет мастер импорта. выберите запятую или разделенную пробелом опцию.
затем выберите разделитель. (это лучше, если вы не хотите, чтобы он имел проблемы при импорте десятичных дробей)
тогда в следующем окне будет расширенный параметр для общего типа столбца. Нажмите кнопку "Дополнительно" и выберите, как разделить десятичные дроби и тысячи.
Измените десятичный разделитель на "." и удалите разделитель тысяч с пробелом.
У меня была такая же проблема, но только это решение не сработало для меня.
До этого мне нужно было перейти в значок "Офис" → "Параметры Excel" → "Дополнительно" и установить тысячу разделителей из ".". ничего).
Существует более прямой метод импорта данных из текста /csv в Excel (2017):
Вы увидите что-то вроде:
let
Origin = Csv.Document(File.Contents("C:\Users\JoseEnriqueP\Downloads\evaluation_output.txt"),[Delimiter=",", Columns=8, Encoding=1252, QuoteStyle=QuoteStyle.None]),
#"Updated type" = Table.TransformColumnTypes(Origin,{{"Column1", Int64.Type}, {"Column2", type text}, {"Column3", type text}, {"Column4", type text}, {"Column5", type text}, {"Column6", type text}})
in
#"Updated type"
Затем вы можете напрямую записывать типы для каждого столбца: - Текст: текст типа - Целые числа: Int64.Type - Десятичные числа: Double.Type
Код импорта будет выглядеть следующим образом:
let
Origin = Csv.Document(File.Contents("C:\Users\JoseEnriqueP\Downloads\evaluation_output.txt"),[Delimiter=",", Columns=8, Encoding=1252, QuoteStyle=QuoteStyle.None]),
#"Updated type" = Table.TransformColumnTypes(Origin,{{"Column1", Int64.Type}, {"Column2", Int64.Type}, {"Column3", Int64.Type}, {"Column4", type text}, {"Column5", Double.Type}, {"Column6", Double.Type}})
in
#"Updated type"
Сделав это, вы получите непосредственно свои данные в Excel.
Для пользователей, которые ищут этот вопрос с более новыми версиями Excel, такими как Excel 365... Как написано в Professor Excel, вы можете активировать/восстановить "Из текста (Legacy)" в настройках.
Мое предпочтительное решение
File - Options - Data
Тогда вы сможете получить старый мастер импорта... наследие, но, на мой взгляд, более интуитивно.
Другие возможности
На этом связанном веб-сайте Профессора Экселя также показаны другие возможности. Даже с новым диалоговым окном импорта, но если у вас есть несколько столбцов с номерами в разных локалях, отличных от настроек локали ваших компьютеров, то такой же импорт будет гораздо труднее. Со старым волшебником вы настроены в течение минуты. С новым диалоговым окном импорта я еще не нашел метод, который был бы таким же быстрым, как с устаревшим методом импорта.