Como ignorar a senha do projeto VBA do Excel


40

Preciso de ajuda para recuperar a senha ou ignorá-la em um projeto que foi realizado no trabalho. O autor usou o MS Excel para fazer o projeto e está no servidor do cliente. O servidor que usamos não tem acesso ao Notepad ++.


Karan obrigado. O problema não estava no documento do Excel, mas não consigo visualizar o código que foi feito por outro funcionário. É sobre o VB IDE que eu posso usar através de excel
user365483

Ok, se a pasta de trabalho do Excel em si não estiver protegida por senha e apenas o projeto VBA interno estiver, veja abaixo.
Karan

Não consigo instalar nenhum editor hexadecimal e o arquivo é um arquivo .xlsm. Karan Eu seria bom se houver uma alternativa
user365483

Respostas:


62

Para arquivos .XLS mais antigos:

  1. Abrir arquivo em qualquer editor hexadecimal

  2. Procure o texto " DPB = " (sem aspas, você deve encontrá-lo logo acima de "[Informações do Host Extender]"

    1

  3. Altere para " DPx = ", salve e feche o arquivo

    2

  4. Abra o arquivo no Excel e pressione Sim se o seguinte aviso aparecer:

    3

  5. Abra o editor VBA ( Alt+ F11) e pressione OK sempre que o seguinte aviso aparecer:

    4

  6. Clique com o botão direito do mouse no nome do projeto VBA, selecione Propriedades , vá para a guia Proteção e exclua as senhas existentes, além de desmarcar a caixa de seleção Bloquear projeto para exibição :

    5

  7. Marque novamente a caixa de seleção Bloquear projeto para exibição e adicione sua própria senha memorável.

  8. OK, e agora o código VBA está acessível!

Para arquivos .XLSM mais recentes:

  1. Altere a extensão do arquivo para .ZIP

  2. Abra o arquivo em qualquer arquivador, como WinRAR ou 7-Zip, e você verá a seguinte estrutura de diretórios:

    6

  3. Vá para o diretório xl e extraia o vbaProject.bin :

    7

  4. Execute os passos # 1-3 acima ( da Para arquivos .XLS mais velhos seção ) com vbaProject.bin

  5. Substitua o vbaProject.bin antigo no arquivo ZIP pela nova versão editada em hexadecimal

  6. Altere a extensão do arquivo novamente para .XLSM

  7. Execute as etapas # 4-7 acima


Isso funciona para o MS office 2013 com os arquivos mais antigos? Tenho a impressão de que a Microsoft corrigiu isso.
Menelaos Bakopoulos

2
Quando tentei esse método no Office 2010 e 2013, ele não funcionou diretamente. Depois de seguir todas as etapas, não consegui visualizar as macros e tentei exportar a macro como .bas, consegui extrair a macro e visualizá-la.
Abbas

Isso foi testado com o Office 2010 e é daí que as capturas de tela são. Além disso, para aqueles que não podem instalar um editor hexadecimal, há muitos disponíveis para uso portátil.
Karan

1
Funciona para arquivos .xlam também. +1
João Mendes

Eu segui todas as etapas, mas depois de pressionar OK no aviso, recebo um novo prompt em que minhas opções são "abrir e reparar" ou "cancelar". Se eu apertar cancelar, ele fecha; se eu abrir e reparar, exclua todas as macros. Estou usando o Excel 2011 para Mac. Alguém mais encontrou isso e existe uma solução alternativa?
User658182
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.