Saltar al contenido

Validar Fecha de Vencimiento de Productos


Recommended Posts

publicado

Buenos Días amigos, tengo una pequeña bodega y quiero implementar algo practico y rápido para su manejo, para ello estoy haciendo una base de datos con macros y formularios pero mi problema consiste en detectar la fecha en que venció un producto y así sacarlo de circulación, para ello hago operaciones con fechas pero no me funciona, así mismo deseo saber que productos vencerán dentro de 10 días para tomar las precauciones del caso. Espero puedan ayudarme, gracias de antemano. Adjunto prototipo de lo que pienso hacer.

valida_fecha.zip

publicado

Para poder operar con fechas ambas variables an de ser del tipo Date, y los TextBox son por definición de tipo Variant, por lo que es necesario convertirlos previamente al tipo Date:



If CDate(TextBox4) - 10 < Date Then
FrmVence.Lblvence.Caption = "PRODUCTO VENCE EN MENOS DE 10 DÍAS " & (TextBox4.Text)
FrmVence.Lblvence.ForeColor = &H4000&
Beep
ElseIf CDate(TextBox4) < Date Then
FrmVence.Lblvence.Caption = "PRODUCTO VENCIDO"
FrmVence.Lblvence.ForeColor = &H80&
Beep
ElseIf CDate(TextBox4) > Date Then
FrmVence.Lblvence.Caption = "PRODUCTO VENCERÁ EL" & " " & (TextBox4.Text)
FrmVence.Lblvence.ForeColor = &HC0C0&
End If


[/CODE]

Si TextBox4 no contiene una fecha válida dará un "Error 13. No coinciden los tipos".

Puedes protegerte contra ese error con:

[CODE]If IsDate(TextBox4) = True Then[/CODE]

No es necesario que antepongas el nombre del formulario delante del nombre de los controles.

publicado

Muy agradecido, aunque a los productos que ya están vencidos los muestra como que vencerán en menos de 10 días y a los que vencerán en esa fecha, osea en 10 días, los muestra vigentes y no me muestra mensajes de productos que ya vencieron, seguro sera cuestión de orden, veré si cambiando posiciones entre lineas dará algún resultado, muchas gracias por tu apoyo.

publicado

¿ Has copiado el código que he adjuntado o has aplicado la solución al que ya tenías ?

Lo pregunto porqué en el archivo que adjuntaste las comparaciones estaban al revés y pasaba exactamente lo que describes.

publicado

Hola amigo, bien te explico, el código esta excelente pero parece que le falta algo, lo copie tal como lo enviaste y cuando filtro un producto q vencerá en menos de 10 días lo encuentra y manda el mensaje, hasta ahí excelente, de la misma forma los que están vigentes, pero cuando filtro un producto que ya tiene días de vencido manda el mismo mensaje, como si le faltaran menos de 10 días pero en realidad ya venció y por ende no avisa por los que ya vencieron. no soy gran conocedor del código vb pero tengo alguna pequeña referencia y lo estuve revisando y a mi parecer esta excelente por ello no puedo encontrar el error. gracias amigo

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.