Uma chamada de propriedade ou método não pode incluir uma referência a um objeto privado, seja como um argumento ou como um valor de retorno (Erro 98)

Objetos privados nunca devem ser passados para fora de um projeto. As seguintes causas do erro são todas proibidas:

  • Um cliente invocou uma propriedade ou método de um componente fora do processo e tentou passar uma referência a um objeto privado como um dos argumentos. Um cliente invocou uma propriedade ou método de um componente fora do processo e o componente tentou retornar uma referência a um objeto privado ou atribuir tal referência a um argumento ByRef .

  • Um componente fora do processo invocou um método de retorno de chamada em seu cliente e tentou passar uma referência a um objeto privado.

  • Um componente fora do processo tentou passar uma referência a um objeto privado como um argumento de um evento que estava sendo gerado.

  • Um cliente tentou atribuir uma referência de objeto privado a um argumento ByRef de um evento que estava manipulando.

Observe que, embora o Visual Basic impeça que você passe referências a objetos privados não visuais entre processos, há alguns casos em que o Visual Basic não pode detectar esse erro e, portanto, não pode evitá-lo. Objetos particulares não são projetados para serem usados fora do seu projeto. Se você passá-las para um cliente, poderá comprometer a estabilidade do programa e causar incompatibilidade com versões futuras do Visual Basic. Se você precisar passar uma classe privada própria para um cliente, defina a propriedade Instancing com um valor diferente de Private. Saiba mais selecionando o item em questão e pressionando F1 (no Windows) ou HELP (no Macintosh).

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.