Sim, é possível escrever macros do Excel no Python:
Em uma nota lateral, você pode editar as macros existentes no Python:
Você consegue usar outros idiomas em vez de macros do VB para Excel?
Outra opção é o C # usando o .NET. Confira este link:
Eu não usei muito, mas pode valer a pena tentar.
É importante notar que, uma vez que exatamente todos os recursos de automação do Excel disponíveis para o VBA são, de fato, servidos através do COM interface, você pode usar qualquer idioma, que suporta objetos Windows COM (ActiveX) . Ele se traduz aproximadamente em quase todas as linguagens de programação modernas do planeta. Eu, pessoalmente, usei com sucesso o Excel do Wolfram Research Mathematica e o puro C ++. Se você não possui uma biblioteca especializada para lidar com a hierarquia de objetos do Excel (como a que eu presumo que exista para Python), ela pode não ser tão agradável de usar quanto com o VB nativo.
O Visual Basic 6 (e o Visual Basic for Applications) foram projetados com a conformidade com a arquitetura COM em mente. Isso significa que a maioria dos tipos de dados definidos para COM são nativos para o Excel e não precisam ser transformados em cada chamada. Então, eu suspeito que manipular o Excel de dentro do VBA é o mais eficiente.
Você pode usar o C # para criar comandos e funções do Excel com o meu suplemento ESharper . O código pode ser editado e executado diretamente em uma sessão do Excel ao vivo.
Tags microsoft-excel