No se puede inferir un tipo común para los operandos segundo y tercero del operador 'If'.

No se puede inferir un tipo común para los operandos segundo y tercero del operador 'If'. Uno debe tener una conversión de ampliación al otro.

Cuando se llama al operador If con tres argumentos, debe haber una conversión de ampliación entre los argumentos segundo y terceros. Por ejemplo, como no existe una conversión de ampliación en ninguna dirección entre Integer y String, el código siguiente provoca este error.

Dim divisor = 3  
' Not valid.  
' Console.WriteLine(If(divisor <> 0, number \ divisor, "Division by zero"))  

Identificador de error: BC33106

Para corregir este error

  • Proporcione una conversión explícita para uno de los operandos, si es posible en el código.

  • Use una construcción de condición diferente, como una instrucción If...Then...Else .

Consulte también