+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 Apr 2026
  1. MargieOsterh

    5 Pontos

200 pontos
Melhores 2026 Apr 06 - 12
  1. danilo.pereira

    96 Pontos

  2. danilo.pereira

    96 Pontos

  3. danilo.pereira

    96 Pontos

  4. willian.metalsystem

    69 Pontos

  5. henrique.muller

    62 Pontos

  6. luciano.fronza

    61 Pontos

  7. luciano.fronza

    61 Pontos

  8. luciano.fronza

    61 Pontos

  9. diuari.molinari

    52 Pontos

  10. diuari.molinari

    51 Pontos

518 perguntas
567 respostas
389 comentários
770 usuários