Excel меняет форматы даты - PullRequest
       5

Excel меняет форматы даты

12 голосов
/ 15 декабря 2009

Я запускаю процесс для создания довольно большого файла данных CSV. Иногда я нахожу полезным открыть CSV в Excel, внести изменения вручную, а затем повторно сохранить. Однако, если в CSV есть даты, Excel автоматически переформатирует их. Есть ли способ помешать Excel сделать это? Было бы полезно, если бы я мог вообще отключить форматирование текста.

Ответы [ 4 ]

6 голосов
/ 15 декабря 2009

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

Это конкретное решение обрабатывается в процессе export . Я не уверен, как бы вы изменили Excel для обработки файла по-другому в время выполнения .

4 голосов
/ 15 декабря 2009

Excel делает несколько неприятных трюков при выводе XML. Один из его трюков - удалить большинство левых разделителей столбцов, если 16 или около того последовательных строк не имеют значений для этих столбцов. Это означает, что если вы разбиваете строки на основе запятых, то в этих строках будет по-разному количество столбцов.

Также будут сброшены любые начальные 0, поэтому такие вещи, как числовые идентификаторы, могут испортиться.

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

Если вам нужно что-то сделать с файлом CSV, кроме как прочитать его , используйте текстовый редактор .

3 голосов
/ 05 января 2010

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

1 голос
/ 02 декабря 2013

Если вы использовали версию файла Excel, которая является 2010 или более поздней (не обязательно более низкая версия), вы можете настроить использование текущего формата даты операционной системы или не в файле Excel / CSV.

  1. Щелкните правой кнопкой мыши ячейку со значением даты (например, «9/12/2013») в файле CSV и откройте меню
  2. Нажмите «Формат ячеек» и откройте всплывающее окно
  3. Перейдите на вкладку «Число», и вы увидите, что «Дата» была выбрана в «Категории» (слева) и «Тип» справа
  4. Замечено, что существует два типа формата даты (один с (), а другой с ()). Прочитайте комментарий там, и вы можете найти, что вы можете использовать формат даты, который не с датой. Это означает, что ваши изменения в файле CSV не будут применены в текущем формате даты операционной системы. Итак, я думаю, что формат даты не будет изменен в файле CSV в этом случае.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...