No me funciona la función iif

La idea de esto es que arrastra el nombre y los apellidos de otra tabla al formulario los nombres si los trae menos el apellido de casada, tengo un campo que indica si es casada o no, y es la idea que si esta casada que tambien arrastre esa parte.

El error radica en donde esta en negrita.

Gracias de antemano

Private Sub texto127_Exit(Cancel As Integer)
Dim cedt
Dim cedp
cedt = DFirst("cedula", "información", "cedula=trim(texto127)")
If Texto127 = cedt Then
Texto129 = DFirst("apellido_primero", "información", "cedula= Trim(Texto127)") + " " + DFirst(("Apellido_segundo"), "información", "Cedula= Trim(Texto127)") + " " + Dfirst(IIf(si_casada = 'si','de' + Trim(apellido_casada)), "información", "cedula= Trim(Texto127))")

horas_t.Enabled = True
salario_xh.Enabled = True
ir.Enabled = True
otras_r.Enabled = True
cedp = DFirst("cedulap", "planilla", "cedulap=trim(Texto127)")
If Trim(Texto127) = cedp Then
horas_t = DFirst("horas_t", "planilla", "cedulap=trim(Texto127)")
salario_xh = DFirst("salario_xh", "planilla", "cedulap=trim(Texto127)")
seguro_s = DFirst("seguro_s", "planilla", "cedulap=trim(Texto127)")
seguro_e = DFirst("seguro_e", "planilla", "cedulap=trim(Texto127)")
ir = DFirst("ir", "planilla", "cedulap=trim(Texto127)")
otras_r = DFirst("otras_r", "planilla", "cedulap=trim(Texto127)")
salario_b = salario_xh * horas_t
sueldo_n = salario_b - seguro_e - seguro_s - ir - otras_r
Comando65.Caption = "Modificar"

End If
horas_t.SetFocus
Else
Texto127.SetFocus
End If
End Sub

Respuesta

Prueba de reemplazar los ' por "

bueno si, pero ahora me marca el iif diciendo que el numero de argumentos es incorrecto o la asignación de propiedad no es valida :(

te falta la salida por false

1 respuesta más de otro experto

Respuesta

La función IIF() necesita 3 argumentos: la comparación, lo que hacer si es verdadera, y lo que hacer si es falsa (https://support.office.com/es-es/article/Funci%25C3%25B3n-Silnm-32436ecf-c629-48a3-9900-647539c764e3?ui=es-ES&rs=es-ES&ad=ES&fromAR=1 ) y tu solo estás poniendo dos de ellos...

Además, sigues con problemas de comillas...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas