Operandos do tipo Object usados em expressões para instruções 'Select' e 'Case'; podem ocorrer erros em runtime

Uma construção Select...Case usa uma ou mais expressões do Tipo de Dados de Objeto.

Quando uma variável ou expressão é avaliada para Object, o compilador deve executar a associação tardia, o que causa operações extras em tempo de execução. Ela também expõe seu aplicativo a possíveis erros em tempo de execução. Por exemplo, se você atribuir uma Form a uma variável Object e tentar compará-la com um número, o runtime gerará um InvalidCastException porque o Visual Basic não pode converter um objeto Form em um valor numérico.

As expressões em uma construção Select...Case devem ser todas do mesmo tipo de dados ou de tipos de dados intimamente relacionados que podem ser convertidos entre si. Isso ocorre porque cada instrução Case compara pelo menos um valor com a expressão de teste na qual a construção Select...Case se baseia.

Por padrão, esta mensagem é um aviso. Para obter informações sobre como ocultar avisos ou tratá avisos como erros, consulte Configurar Avisos no Visual Basic.

ID do Erro: BC42036

Para corrigir este erro

  • Se possível, organize todas as expressões para avaliar os tipos de dados para os quais os operadores de comparação são definidos.

Confira também