1

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

Проблема в том, что это действительно испортило систему контроля версий, так как сумма MD5 файла изменяется.

Есть ли способ остановить Excel от этого? Насколько я вижу, в файле нет ссылок на формулы или любые другие динамические элементы.

2 ответа2

3

У меня была такая же проблема, и после нескольких часов чтения нескольких форумов и страниц я нашел основную причину проблемы и ее решение, поэтому я буду копировать и вставлять свой ответ на форумах, которые я читаю.

Кажется, существует проблема с файлами Excel, в частности с файлами Excel 2003 xls, когда они открываются в Excel, даже если они не изменяются и не сохраняются, Excel автоматически обновляет некоторые метаданные файла, такие как "Свойства документа и личная информация" и "Статистика последнего доступа", поэтому файл каждый раз, когда он открывается, немного изменяется, и это также приводит к изменению MD5.

Решение:

Одним из способов избежать этой проблемы является удаление свойств документа и личной информации.

Чтобы удалить скрытые данные и личную информацию из документов Office, в Excel 2007 и для Excel 2013/2010.

Другой способ избежать этого - использовать файлы .xlsx . Я пытался воспроизвести это поведение в файлах .xlsx , но, похоже, это происходит только в файлах .xls (2003).

0

Чтобы избежать какой-либо возможности изменения метаданных файла, скопируйте файл и откройте копию.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .