+2 votos
49 visitas

Ao tentar executar uma macro de tabela no WES, apresenta a mensagem:

Segue abaixo a declaração das variáveis da macro citada na mensagem do erro:

Dim giNivelCustom, giNivel1Custom, giNivel2Custom, giNivel3Custom As Integer

 

 

 

por (25 pontos) | 49 visitas

1 Resposta

0 votos
Melhor resposta

As variáveis globais do VBA precisam ser de tipos primitivos (Integer, String, etc).

Isto porque o Provider precisa serializar e deserializar os valores quando o contexto é transferido de um provider para outro (insert para post, por exemplo).

No caso desta macro em questão, ao que parece o programador cometeu uma falácea na declaração das variáveis, pois em outras linguagens as variáveis giNivelCustom, giNivel1Custom, giNivel2Custom seriam igualmente do tipo Integer, porém em VBA elas estão sem tipo (ou seja: Variant) e apenas a giNivel3Custom é que está como Integer.

Para funcionar teria que alterar para:

Dim gnNivelCustom as Integer, giNivel1Custom as Integer, giNivel2Custom as Integer, giNivel3Custom as Integer

 

por (569 pontos)
selecionada por
Melhores Jun 2026
  1. Duwe

    4 Pontos

200 pontos
Melhores 2026 Jun 08 - 14
  1. danilo.pereira

    96 Pontos

  2. danilo.pereira

    96 Pontos

  3. danilo.pereira

    96 Pontos

  4. luciano.fronza

    61 Pontos

  5. luciano.fronza

    61 Pontos

  6. luciano.fronza

    61 Pontos

  7. diuari.molinari

    52 Pontos

  8. diuari.molinari

    51 Pontos

  9. diuari.molinari

    51 Pontos

  10. willian.metalsystem

    45 Pontos

518 perguntas
568 respostas
389 comentários
791 usuários