Erro do Excel "Esta pasta de trabalho contém macros do Excel 4.0 ou módulos do Excel 5.0"

Erro do Excel "Esta pasta de trabalho contém macros do Excel 4.0 ou módulos do Excel 5.0"

Tenho uma pasta de trabalho que foi protegida pelo recurso Proteger pasta de trabalho. Foi enviado para outra pessoa para modificação. Quando o enviaram de volta, ele estava desprotegido e quando tento protegê-lo novamente recebo este erro,

"Esta pasta de trabalho contém macros do Excel 4.0 ou módulos do Excel 5.0. Se desejar proteger com senha ou restringir a permissão para este documento, você precisará remover essas macros."

Olhei e não há novas macros no arquivo editado. O arquivo original continha as mesmas macros e podia ser protegido contra gravação, então não sei por que o arquivo modificado está apresentando problemas. Quais são as causas e soluções comuns para esse erro e faz sentido que o arquivo modificado tenha o erro quando o original não tem?

Responder1

Tente clicar em "Proteger pasta de trabalho" e desmarcar "Proteger estruturas e janelas". Funcionou para mim.

Responder2

Obviamente, o seguinte é para qualquer pessoa que esteja pesquisando sobre o problema e precisando de uma solução. Tenho certeza de que o autor da postagem já parou de se importar!

As únicas razões para a mensagem se enquadram em duas classes principais:

  1. Alguém que tinha o arquivo habilitado em geral em sua cópia do Excel o uso de macros, comandos e páginas de macro do Excel 4 (e 5, mas é assim que as pessoas os chamam), e poderia realmente ter criado macros literais. Aparência diferente das macros VBA, com certeza, mas depois de vê-las, você entenderá muito rapidamente.

Não é provável.

  1. A pessoa que tinha o arquivo used one of the viable (for this kind of use) Excel 4 macro commandsem um intervalo nomeado. É MUITO provável que isso tenha acontecido.

Como os comandos de macro do Excel 4 SÃO comandos de macro, usá-los, seja em uma macro literal ou em intervalos nomeados, fará com que o Excel trate a planilha como contendo macros. Até por volta do início de 2021, você poderia salvar o arquivo em que os estava usando (em intervalos nomeados para este ponto, não em macros reais) e durante o salvamento, o Excel avisaria para salvar o arquivo como um arquivo habilitado para macro ( ou seja: .XLSM, não .XLSX). Você poderia dizer "Não!" e o salvamento funcionaria normalmente, e essa repreensão nunca mais aconteceria. A abertura do arquivo não gerou avisos e as fórmulas nos intervalos nomeados funcionaram perfeitamente.

Há um ano e pouco, isso não permite mais que isso aconteça. Se você se recusar a usar o formato .XLSM, as funções do Excel 4 desaparecerão quando você abri-lo novamente e as fórmulas de células que usam os intervalos nomeados dos quais faziam parte serão interrompidas. Se você usar o formato .XLSM, muitas pessoas não abrirão sua planilha. Mas as fórmulas usadas pelos Intervalos Nomeados funcionarão se funcionarem.

Esse segundo é certamente o que você precisa explorar. Abra o Gerenciador de nomes e comece a examinar os intervalos nomeados, observando seu Refers toconteúdo (geralmente uma fórmula ou intervalo). Você está procurando qualquer nome de função do Excel 4.

Por exemplo, EVALUATE()é uma função maravilhosa da linguagem macro do Excel 4 e não tem absolutamente nenhum equivalente moderno. Nenhum, ou quase nada. Se você recebeu a planilha de volta e esta mensagem apareceu, essa é a função que eu poderia ter usado 7 a 8 vezes em 10. (Claro, eu NUNCA teria deixado um sinal tão óbvio de que quebrei a proteção (mais fácil coisa do mundo) e fiquei feliz com sua planilha. Outros são mais descuidados ou simplesmente não se importam, é triste dizer.)

Em qualquer caso, QUALQUER função que você detectar e não reconhecer pode ser verificada de duas maneiras fáceis. Você pode pesquisar na internet pela função. Se for um dos comandos de macro do Excel 4, você certamente verá esse fato no primeiro ou dois cliques que seguir. As pessoas querem que você saiba que elas sabem algo que você não sabe, e é divertido imaginar que você está impressionando as pessoas.

A outra maneira é ainda mais fácil. Basta ir até uma célula e iniciar uma fórmula com a função e enquanto você digita o nome da função, veja se Intellisenseaparece ajuda ou não. Se não, você encontrou um deles (outro cara pode ter usado mais). E termine a função, depois pressione Enter e veja se dá erro #NAME!ou faz... alguma outra coisa. Qualquer um que cometa esse erro é um deles.

Nesse ponto, ou antes de fazer qualquer outra coisa, na verdade, você poderia entrar em contato com o outro cara e dizer "Ei, você fez algo desse tipo?" Muitas pessoas ficariam envergonhadas e diriam "Oh, hum, sim..." e ajudariam você a limpar as coisas. Muitos, porém, se calariam e olhariam para você como se você tivesse acabado de criar chifres, então:

Remova todos esses intervalos nomeados se você não os criou. Essa é a coisa mais provável. E o uso deles na planilha que o outro cara deixou mentindo irá falhar, mas você não os queria de qualquer maneira. Execute-os e exclua-os ou corrija-os conforme apropriado. Isso pode ser simples, com usos bastante perceptíveis e exclusão ou correções simples. Pode ser bem complicado, principalmente se a pessoa tentou limpar e deixou uma verdadeira bagunça.

Há um outside the question itselfconjunto de fatores a serem considerados em relação a algum dia trabalhar com essa pessoa novamente sem supervisão gerencial sobre o trabalho horrível que ela faz, mas isso é destinado a alguém que busca o problema mais geral e precisa de um caminho a seguir, e provavelmente prefere um não - caminho de confronto a seguir.

Finalmente, é possível, embora extremamente improvável, dado que ele iria modificá-lo de alguma forma e devolvê-lo, presumivelmente para uso geral. Embora ele possa não estar ciente das etapas da MS para apertar os parafusos no uso desses comandos (as empresas agora podem fechá-los completamente por meio do Trust Center e das políticas empresariais, o que, embora pudesse ter sido possível antes, não era algo que o programa mencionou ativamente antes) quando eles finalmente levaram a sério o fato de eles desaparecerem pela primeira vez em 25 anos, ele certamente não poderia ter pensado em manter seu trabalho escrevendo macros reais do Excel 4 por conta própria. Mas se o fizesse, eles seriam colocados em páginas especiais inseridas para eles e seriam muito fáceis de detectar. Se ele fez esse tipo de coisa, falando sério, suas modificações serão completamente inutilizáveis ​​fora de seu computador, pois ninguém mais as aceitará. Volte ao original que foi enviado a ele e encontre uma forma diferente de modificar a planilha.

Digo isso como uma pessoa que os habilitou em minha cópia do Excel, mas que nunca os impingiria a outros como um trabalho aceitável. Eles são para meu próprio trabalho e raramente usados. Definitivamente não deve ser entregue a outras pessoas.

informação relacionada