DCount usando fecha y campos que a veces estarán en blanco (null)

Uso la siguiente fórmula la cual funciona bien, salvo si le agrego un campo que es fecha y si algún otro campo queda vacío (porque no se requiere llenar). Creo que debería usar Nz pero no se si estoy en lo correcto, ¿me ayudan?

If DCount("[DNI]", "Antibioticos", "[Tipo_ATB]='" & Me.Tipo_ATB.Value & "' and [DNI]='" & Me.DNI.Value & "' and [Motivo_Inicio]='" & Me.Motivo_Inicio.Value & "'") >= 1 Then
msgbox "bla bla"
end if

Si le agrego fecha 

[F_Inicio]=#" & Me.F_Inicio.Value & "#

o le agrego 

"[Germen]='" & Me.Germen.Value & "'

este ultimo puede quedar vacio a veces, el codigo en su totalidad no funciona.

1

1 Respuesta

63.360 pts. ' Si se puede imaginar se puede programar

Si tienes un campo vació si funcionara, lo que pasa es que no encontrar ningún registro por que estas usando el operador AND estas obligando a que solo te regrese el valor si encuentra esas coincidencias.

Para trabajar con la función Nz un ejemplo seria este

Me.Prueba = DCount("[numFactura]", "Tabla", "[numFactura]= " & Nz(Me.Prueba2, "111") & "")

Me contara todos los números de factura que coincidan con el campo Prueba2, en caso que mi campo Prueba2 este null lo comparar con el numero 111

Hola Antonio, entonces debería, en el caso de el campo que puede ser nulo, ¿ponerle "isnull" en vez de "111"?

POrque si usara OR, tendria como opcion elegir uno de los campos, yo quiero que se cumplan todos por eso pongo AND . Es asi?

Si es para numero

" & Nz(Me.Prueba2, "null") & "

Si es para texto

'" & Nz(Me.Prueba2, null) & "'

Or por ejemplo:

If me.text = 1 OR me.text = 2 then

En el caso anterior entra si tengo 1 o 2 en el campo me.text

And por ejemplo:

If me.text >1 AND me.text <10 then

En el caso anterior no entra si tengo 11 en el campo me.text, por que se cumple la primera condicion pero la segunda no.

Añade tu respuesta

Haz clic para o
El autor de la pregunta ya no la sigue por lo que es posible que no reciba tu respuesta.

Más respuestas relacionadas