Ver Mensaje Individual
  #2 (permalink)  
Antiguo 15/03/2006, 18:03
Avatar de David
David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación

Cita:
Iniciado por ci2000
Hola, tengo un problema con esta función. El tema es que si uso iif el ejemplo siguiente me da error y si lo planteo con el if común no me da error. Sólo con colocar con CommandButton pueden probar este ejemplo.

Código:
Option Explicit
Dim Matriz() As String
 
Private Sub Command1_Click()
 MsgBox IIf(UBound(Matriz) = 2, Matriz(2), "No hay datos")
End Sub
 
Private Sub Command2_Click()
 If UBound(Matriz) = 2 Then
  MsgBox Matriz(2)
 Else
  MsgBox "No hay datos"
 End If
End Sub
 
Private Sub Form_Load()
 Matriz = Split("Dato 1-Dato 2", "-")
End Sub
Gracias por las respuestas.
Javier
Es que al ejecutar la línea del IIf el Visual comprueba todos si todos los errores de ejecución q' pudieran pasar (no coinciden los tipos, índice de matriz no existente) lo cual en el caso de Matriz el 2 tal vez no sea un índice válido, mientras que en el If la línea If no contiene la referencia de Matriz(2) y por tanto no tira error...
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.