+1 voto
21 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 (21 pontos) | 21 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 (539 pontos)
selecionada por
Melhores Jul 2020
  1. nira

    7 Pontos

  2. willian.metalsystem

    2 Pontos

200 pontos
Melhores 2020 Jun 29 - Jul 05
  1. nira

    7 Pontos

  2. willian.metalsystem

    2 Pontos

437 perguntas
484 respostas
350 comentários
470 usuários