Я использую Excel 2007.
Я сделал дамп данных из базы данных MSSQL в CSV-файл, затем сохранил его как часть большой книги Excel. Одно из полей — это дата, которая загружается как: 39262.3631094907
. Когда я использую формат даты Excel, он отображается правильно как 6/30/2011.
Если я сохраняю файл как CSV или иным образом копирую и вставляю это поле в новую электронную таблицу, дата меняется на 6/29/2007. Я могу скопировать его в тот же документ, и он останется правильным, но перемещение его в новый документ изменяет данные.
Это сводит меня с ума, так как я не могу найти способ сохранить правильную дату, не перепечатывая их все вручную, что совершенно непрактично, потому что там тысячи строк! Я понятия не имею, как он управляет преобразованием строки в число или почему это по-разному в разных таблицах. Кто-нибудь знает, почему это происходит или как этого не допустить?
решение1
Число, которое вы получили из MSSQL, будет рассматриваться Excel как количество дней с 1900 или 1904 года, в зависимости от настроек вашей рабочей книги Excel. Похоже, что ваши новые рабочие книги по умолчанию используют систему дат 1900, но вы хотите 1904.
Чтобы изменить в Excel 2007:
- Откройте рабочую книгу или переключитесь на нее.
- Нажмите кнопку Microsoft Office, а затем нажмите Параметры Excel.
- Нажмите «Дополнительно».
- Установите флажок Использовать систему данных 1904 в разделе При расчете этой книги, а затем нажмите кнопку ОК.