Eu não acho que o problema que você não pode abrir o arquivo diretamente, e a incapacidade do Excel para executar este código não estejam relacionados. Parece que há alguma corrupção no arquivo.
Como parece que o Excel não detectou isso automaticamente, sugiro copiar todas as planilhas para um novo arquivo e usar exportar e importar o código para recuperar o código.
Outros métodos para recuperar um arquivo corrompido podem ser encontrados aqui