У меня есть набор данных, полученных в формате .csv, в котором у меня есть набор длинных номеров UPRN. Я участвую в процессах сопоставления данных, связанных с новыми правилами голосования IER.
Когда я открываю файл .csv, числа находятся в научном формате (2.00E+11, все числа одинаковые). Все эти числа должны быть разными. Для одной электронной таблицы я уже сделал следующее:
Я открыл файл в Блокноте, сохранил в формате .txt. Выберите Данные > Из текста. В шаге 1 мастера импорта текста выберите С разделителями. В шаге 2 мастера импорта текста выберите Запятая. В шаге 3 мастера импорта текста выберите столбец с длинным идентификатором и выберите Текстовый формат данных. Затем завершите.
Это сработало для одной электронной таблицы. Все числа были показаны в листе Excel, все числа были разными, как и должно быть. Но когда я попытался сохранить как .csv, все числа вернулись к 2.00E+11 (все те же числа).
Затем, когда я попытался сделать это с двумя другими рабочими книгами, которые у меня были, по какой-то причине это не сработало, хотя я выполнил каждый шаг точно так же. Даже когда я открыл в блокноте, они все были одинаковыми числами (2.000E+11, которые при преобразовании в текст просто превратились в 2000030000000). Мне удалось преобразовать исходный .csv в рабочую книгу, преобразовать его в блокнот, и когда я прокрутил вниз все символы, я увидел, что исходные данные были там, среди беспорядка.
Как мне заставить эти данные проявить себя?! Любые предложения будут приняты с благодарностью, или, действительно, пожалуйста, дайте мне знать, есть ли ссылка на это где-то еще.
Большое спасибо
решение1
Это происходит потому, что Excel видит эти ячейки как числа, но поскольку они слишком длинные, они интерпретируются как числа с плавающей точкой. Точность форматирования чисел в Excel достигает максимума в 15 цифр, как и объяснялосьздесь.
Вероятно, вам следует обрабатывать каждое значение как string
. Добавление единички '
в начало каждой ячейки с данными должно исправить эту проблему, или вы можете отформатировать все ячейки как string
или text
.
Однако этот метод не лишен ограничений. Если вы собираетесь обрабатывать эти данные, то вам может понадобиться какой-то способ очистки данных перед тем, как передавать их в то, что их обрабатывает.