El número de argumentos es incorrecto o la asignación de propiedad no es valida access

Este es un formulario de un proyecto, en el que al ingresar el numero de cédula, saldría el nombre completo de la persona, y su salario, la información no sale aquí, me debería de servir pero me sale este error El número de argumentos es incorrecto o la asignación de propiedad no es valida access.

Y no que hacer, abajo puse donde sale el error en negrita

Private Sub Texto60_Exit(Cancel As Integer)
Dim cedt
Dim cedp
cedt = DFirst("cedula", "información", "cedula=trim(texto60)")
If Trim(Trim(Texto60)) = cedt Then
aqui me sale el error en Dfirst cp = DFirst("trim(apellido_primero)+''+trim(apellido_segundo)+'' iif (si_casada = 'si','de'+trim(apellido_casada),''+',+ trim (Nombre_primero) +''+ trim(nombre_segundo)", información, " ", Cedula = Trim(Texto60))
horas_t.Enabled = True
salario_xh.Enabled = True
ir.Enabled = True
otras_r.Enabled = True
cedp = DFirst("cp", "planilla", "c=trim(texto60)")
If Trim(Texto60) = cedp Then
horas_t = DFirst("horas_t", "planilla", "cp=trim(texto60)")
horas_t = DFirst("horas_t", "planilla", "cp=trim(texto60)")
sueldo_xh = DFirst("sueldo_xh", "planilla", "cp=trim(texto60)")
seguro_s = DFirst("seguro_s", "planilla", "cp=trim(texto60)")
seguro_e = DFirst("seguro_e", "planilla", "cp=trim(texto60)")
ir = DFirst("ir", "planilla", "cp=trim(texto60)")
otras_r = DFirst("otras_r", "planilla", "cp=trim(texto60)")
salario_b = salario_xh * horas_t
salario_n = salario_b - seguro_e - seguro_s - ir - otras_r
Comando65.Caption = "Modificar"

End If
horas_t.SetFocus
Else
Texto60.SetFocus
End Sub

Respuesta
2

Normal que te salga error, porque esa expresión no tiene ni pies ni cabeza: no le pones los argumentos necesarios al DFirst (serían 3 en tu caso), metes comillas donde te apetece sin ningún criterio, las omites en donde sí debieran ir...

Mi consejo es que en vez de intentar hacerlo todo con un DFirst, lo hagas con varios, encadenando sus resultados, algo así:

cp = Trim(DFirst("apellido_primero","información","Cedula = " & Trim(Texto60))) + " " + Trim(DFirst("apellido_segundo","información","Cedula = " & Trim(Texto60))) +.....

Un saludo.


Gracias, si me guarda, excepto que debo quitar todo lo que dice iif, porque si lo dejo no me sale el nombre o si no me da error esa parte, si me puedes ayudar te lo agradezco.  

Te pongo solo la primera condición (cuando casada=si), la segunda parte te la dejo a ti, porque no sé lo que quieres poner:

IIF("si_casada = 'si'","de " & Trim(DFirst("apellido_casada","información","Cedula = " & Trim(Texto60))),....)

Una pequeña ahí donde pongo el dfirst?

Una pequeña duda, ahí donde pongo el dfirst

Lo tienes puesto...

Bueno y en el caso que solo necesito usar las dos condiciones que debo poner después. 

La función requiere tres argumentos obligatoriamente, así que tendrás que usarlos. Mira el enlace de la ayuda de la función que te puse en la otra respuesta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas