Como evitar que o Excel modifique o arquivo ao sair?

1

Sempre que eu abro um arquivo do Excel e o fecho sem alterar nada, o Excel modifica o arquivo sem pedir permissão ou dar qualquer tipo de aviso. Ele modifica apenas 4 bytes no deslocamento 0x046C, e eu suspeito que isso seja apenas o tempo da última modificação codificada ou algo assim.

O problema é que isso realmente estraga o sistema de controle de versão, já que a soma MD5 do arquivo é alterada.

Existe alguma maneira de impedir que o Excel faça isso? Tanto quanto eu posso ver, não há links de fórmulas ou quaisquer outros elementos dinâmicos no arquivo.

    
por Pasha 24.10.2013 / 03:34

2 respostas

3

Eu tive o mesmo problema e, depois de várias horas lendo vários fóruns e páginas, encontrei a causa raiz do problema e da solução. Por isso, vou copiar e colar minha resposta nos fóruns que leio.

Parece haver um problema com arquivos do Excel, em especial arquivos do Excel 2003 xls, sempre que eles são abertos no Excel, mesmo que eles não sejam alterados e não sejam salvos, o Excel atualiza automaticamente alguns dos metadados do arquivo , como as "Propriedades do Documento e Informações Pessoais" e "Estatísticas do Último Acesso", portanto o arquivo toda vez que ele é aberto muda um pouco, e isso faz com que o MD5 mude também.

Solução:

Uma forma de evitar esse problema é remover propriedades do documento e informações pessoais .

Para remover os dados ocultos e as informações pessoais dos documentos do Office, em Excel 2007 e para Excel 2013/2010 .

Outra maneira de evitar isso seria usar arquivos .xlsx . Eu tenho tentado replicar esse comportamento em .xlsx arquivos, mas parece acontecer apenas em arquivos .xls (2003).

    
por 30.04.2014 / 23:54
0

Para evitar qualquer possibilidade de alterar metadados de arquivos, copie o arquivo e abra a cópia.

    
por 24.10.2013 / 14:45