Невозможно применить числовой формат к столбцу в CSV-файле среднего размера в Excel

Невозможно применить числовой формат к столбцу в CSV-файле среднего размера в Excel

У меня есть CSV-файл среднего размера (195 000 строк). По какой-то причине, когда я пытаюсь отформатировать столбец чисел как валюту при открытии его в Excel, он вообще ничего не делает. Если я редактирую файл и оставляю в нем меньшее подмножество строк (10-20 строк), я могу отформатировать столбец.

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

решение1

Да, это известное поведение Excel.

Excel не позволяет вам настроить импорт для CSV, поэтому вы не можете повлиять на него указанным образом. Это способ, которым проблема может существовать. Если бы вы могли, это никогда не дошло бы до проблемы.

Я опишу проблему, но у меня нет подробностей, как сделать то, о чем я говорю. Это доступно в Интернете, но я помню, что потребовалось некоторое время, чтобы это найти, и у меня сейчас этого нет. Мои извинения за эту часть.

Проблема в том, что когда Excel импортирует файл типа CSV, он на самом деле смотрит только на первые 16 записей в каждом столбце данных, чтобы решить, как форматировать столбец при импорте. Да. 16 записей, даже при предполагаемой загрузке 195 000 строк или миллиона.

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

Однако рассмотрим пример, с которым я столкнулся здесь месяц или два назад, в котором время приходило в формате часов и минут или, может быть, минут и секунд. Потому что данные, вероятно, были отсортированы либо фактически, либо по методу создания, по времени и, конечно, минута или две и несколько секунд были начальными записями. Не работает там, да?

Есть способ, и это то, что нужно исследовать, заставить Excel просмотреть столько записей, сколько нужно, прежде чем решить, как форматировать столбцы. Это внутрипрограммное решение проблемы.

(Если бы Excel позволял вам принудительно форматировать, как в TXT-файле, он бы фактически позволял вам контролировать этот аспект, но... вы знаете... Excel...)

Другие решения находятся вне Excel. Такие вещи, как добавление некоторых строк в начале, которые имеют форму/материал, чтобы принудительно задать нужное вам форматирование. Удалите их позже. Или отредактируйте, чтобы переместить группу строк из середины в начало. Что-то вроде этого. Прекрасно, относительно просто, но кто бы не предпочел решение в программе, верно?

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

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

Связанный контент