Converter macros VBA em Apps Script

Antes de começar

Talvez seja necessário atualizar as APIs incompatíveis no código VBA antes de converter os arquivos. Para arquivos com o status Suportado exatamente, siga para a Etapa 1: converter seus arquivos.

Modificar APIs VBA incompatíveis

Para arquivos com o status Compatível com solução alternativa ou Precisa de investigação, você pode aplicar soluções alternativas e correções após a conversão no Apps Script, mas recomendamos que você modifique primeiro o código VBA com que está familiarizado antes de converter os arquivos.

Para cada API marcada como Compatível com solução alternativa ou Precisa de investigação no relatório de compatibilidade, recomendamos o seguinte:

  • Se a função realizada pela API não for essencial para o funcionamento correto da macro do VBA, remova-a do código VBA. Se for, mude o código para implementar um comportamento semelhante com as APIs VBA compatíveis.
  • Para APIs com o status Compatível com solução alternativa, se não for possível mudar para APIs VBA compatíveis, deixe as APIs VBA como estão. Depois de converter para o Apps Script, uma solução alternativa conhecida para essa API será recomendada nos comentários do código convertido do Apps Script.
  • Se o problema for causado por um recurso de linguagem não implementado, reescreva o código para evitar o uso desses recursos.
  • Para APIs com o status Necessita investigação, verifique se o código contém alguma das seguintes APIs:

    • Adodb.connection
    • CreateObject: essa API é usada com frequência para se conectar a bancos de dados e softwares de planejamento de recursos empresariais.
    • Shell.execute
    • OleObject

    Se a resposta for sim, recomendamos que você não converta os arquivos a que essas APIs pertencem e investigue outras opções. Essas APIs tendem a realizar operações críticas para uma macro, como se conectar a um banco de dados ou acessar um recurso local, e o Apps Script geralmente não é uma boa solução.

Etapa 1: converter os arquivos

  1. No computador, abra o Google Drive.
  2. No painel lateral à direita, clique no complemento Macro Converter Ícone do Macro Converter. Se o painel lateral não aparecer, clique em Mostrar painel lateral no canto inferior direito.
  3. Clique em Adicionar arquivos e pastas. O Macro Converter só reconhece arquivos do Excel.
  4. Escolha os arquivos ou pastas que você quer converter e clique em Selecionar. Selecione menos de 2.000 arquivos por vez.
  5. Para mudar onde os arquivos convertidos são salvos, clique em "Mudar pasta de destino" e selecione a pasta desejada. Caso contrário, os arquivos serão salvos na pasta Meu Drive.
  6. Clique em Converter.
  7. Quando a conversão for concluída, clique em Ver resultados.

Etapa 2: testar os arquivos convertidos

Executar o código do Apps Script

Depois de converter os arquivos, teste as funções do Apps Script. Teste os arquivos convertidos com os dados que você normalmente usa com seus arquivos do Excel. Se possível, compare a saída dos arquivos convertidos do Planilhas com a dos arquivos originais do Excel.

Teste seus gatilhos

Se os arquivos tiverem gatilhos como onOpen(), onEdit() ou onClick(), teste-os também. Alguns gatilhos do VBA não são convertidos automaticamente e precisam ser tratados no Apps Script. Consulte Resolver problemas comuns.

Revisar arquivos ReadMe

Se um arquivo ReadMe foi gerado com o arquivo convertido, analise os problemas de conversão listados nele.

  • Se os problemas forem problemáticos para casos que você não testou, aplique as mudanças recomendadas ao código.
  • Se você testou todos os cenários possíveis e tudo funciona conforme o esperado, provavelmente não precisa fazer mudanças.

Etapa 3: corrigir erros

Se você encontrar erros ao testar os arquivos, consulte Corrigir erros no código convertido.

Se o código for executado sem erros, mas o resultado não for o esperado, abra o arquivo ReadMe. Analise cada seção para determinar o que está causando o problema e aplique a correção recomendada.

Depois de corrigir os erros, teste o arquivo novamente para garantir que tudo funcione como esperado.