
Когда я импортирую файл .csv или .txt в Excel, текстовая отформатированная дата, например "Nov-24" (2021) (двойные кавычки в файле есть, 2021 нет) преобразуется в формат даты, и добавляется текущий год, например 11/24/2022, и отображается как 24-Nov. Попробуйте отсортировать по дате после того, как это будет сделано!
Похоже, что двойные кавычки в текстовом поле даты игнорируются в Excel. Поле Квалификатор текста: установлено на ". Как импортировать текстовую дату в виде текста? Что должно быть в файле .csv, кроме двойных кавычек, чтобы Excel знал, что текстовую дату нужно сохранить в текстовом формате?
Файл CSV создается с использованием JavaScript.
решение1
Используйте диалоговое окно обработки файла вместо простого открытия файла .csv/.txt в Excel.
Диалоговое окно появляется через меню «Данные» > группа «Получить и преобразовать данные» > кнопка «Получить данные» > опция «Из файла» > подопция «Из текста/CSV» после выбора файла с помощью стандартного средства выбора файлов. Диалоговое окно обработки файлов должно позволять импортировать поля «как есть». Это не позволяет процедуре импорта применять свой «интеллект» (правила принятия решений) и «решать», как содержимое файла преобразуется в значения на рабочем листе.
Следующий тестовый файл
был выбран для импорта и после выбора файла появился диалог обработки файла
Обратите внимание, что диалоговое окно фактически указывало, что «Nov-24» в файле .txt будет импортировано как дата 01/11/2024 (или 11/01/2024 в формате мм/дд/гггг).
Однако это было предотвращено выбором параметра «Не определять типы данных» в элементе управления «Определение типа данных».
Импортированные данные выглядят так
Как можно заметить из формулы в ячейке E2
, значение Nov-24
, отображаемое в ячейке, A2
не является числом (и, следовательно, не является датой), а представляет собой просто текстовую строку (хотя она теряет двойные кавычки, присутствующие в файле .txt).
Фактически, при выборе параметра «Не определять типы данных» все импортированные значения обрабатывались как текстовые строки, включая числа 12, 87,2, 25 и 42,1.
Вышеуказанное было сделано с помощью Office 365. Более ранние версии Excel имеют совершенно другие версии диалогового окна импорта файлов и, если мне не изменяет память, предоставляют больше контроля на уровне столбцов (то есть позволяют импортировать только некоторые столбцы в виде текстовых строк).