Tengo una duda a la hora de evaluar una expresión booleana, siempre para saber si es verdadero o falso, directamente pongo (if Variable) a secas, sin =, pero sin querer le puse = True y no entraba en la condición, tras quitarle el true ya entraba. Sé que el valor verdadero de un boolean es -1, pero entonces, ¿por que cuando pones (if NumeroInteger) sin =, cuando NumeroInteger<>-1 & <>0, lo toma como -1? ¿Sabéis qué tipo de conversión ha realizado por sí sola la función IF? y en caso de "Si", ¿Podríais indicarme cual es esta función de conversión booleana?
Sub PruebasBoolean()
Dim VarInteger As Integer
VarInteger = 100
If VarInteger Then MsgBox "La expresión es evaluada como true"
If VarInteger = True Then MsgBox "Nunca se cumple la condición"
VarInteger = -1
If VarInteger = True Then MsgBox "Se cumple la condición"
End Sub[/CODE]
Saludos.
Featured Replies
Archivado
Este tema está ahora archivado y está cerrado a más respuestas.
Hola,
Tengo una duda a la hora de evaluar una expresión booleana, siempre para saber si es verdadero o falso, directamente pongo (if Variable) a secas, sin =, pero sin querer le puse = True y no entraba en la condición, tras quitarle el true ya entraba. Sé que el valor verdadero de un boolean es -1, pero entonces, ¿por que cuando pones (if NumeroInteger) sin =, cuando NumeroInteger<>-1 & <>0, lo toma como -1? ¿Sabéis qué tipo de conversión ha realizado por sí sola la función IF? y en caso de "Si", ¿Podríais indicarme cual es esta función de conversión booleana?
Saludos.