Autocorregir un control de un formulario
Publicado por Carlos (6 intervenciones) el 23/07/2014 11:42:51
Buenas,
Quiero que un control de un formulario que va albergar un DNI haga la validación y, en su caso, la corrección del valor introducido.
Por ejemplo, que si se introduce un DNI sin ceros a la izquierda, los añada; si la letra se escriba en minúscula, la convierta a mayúsculas; si no se introduce letra, la calcule, si el usuario introduce un guión entre los dígitos y la letra, lo elimine, etc.
He creado una función que realiza todo este trabajo y la invoco con el evento BeforeUpdate del control donde almaceno el DNI.
El caso es que en los casos en los que la función me devuelve un DNI corregido, querría que se insertara automáticamente como el valor del control y devolver al usuario al formulario en el que se le muestre el valor corregido en el control para que no tenga más que confirmarlo pulsando Enter, Tab, o moviéndose a otro control. Pero cuando intento cambiar el valor del control, se genera un error de run time. El valor del control no se puede cambiar dentro del evento BeforeUpdate(). Se puede cancelar y volver al valor anterior, pero no sugerir uno distinto.
¿Alguna idea?
Gracias
Quiero que un control de un formulario que va albergar un DNI haga la validación y, en su caso, la corrección del valor introducido.
Por ejemplo, que si se introduce un DNI sin ceros a la izquierda, los añada; si la letra se escriba en minúscula, la convierta a mayúsculas; si no se introduce letra, la calcule, si el usuario introduce un guión entre los dígitos y la letra, lo elimine, etc.
He creado una función que realiza todo este trabajo y la invoco con el evento BeforeUpdate del control donde almaceno el DNI.
El caso es que en los casos en los que la función me devuelve un DNI corregido, querría que se insertara automáticamente como el valor del control y devolver al usuario al formulario en el que se le muestre el valor corregido en el control para que no tenga más que confirmarlo pulsando Enter, Tab, o moviéndose a otro control. Pero cuando intento cambiar el valor del control, se genera un error de run time. El valor del control no se puede cambiar dentro del evento BeforeUpdate(). Se puede cancelar y volver al valor anterior, pero no sugerir uno distinto.
¿Alguna idea?
Gracias
Valora esta pregunta
0