Como bloquear las celdas de un libro y que solamente puedan utilizar una macro

Hola,

Tengo un archivo donde deseo que la gente que colabora conmigo registre su horario de entrada y de salida, esto con la finalidad de saber su puntualidad y ademas el sueldo que le corresponde a cada uno (pues su sueldo depende de sus horas trabajadas).

Todo esta desarrollado bien (al menos a lo que yo creo). Tengo las hojas protegidas y puedan modificar los rangos donde deben colocar las horas de entrada y salida, y en esos rangos deben apretar un botón (realizado con macro) para que coloque la hora en la que están arribando o saliendo. Aquí viene mi problema, al momento de permitir que esas celdas sean modificadas, pueden colocar la hora sin ningún problema con el teclado, entonces no me daría cuenta la hora real de entrada o de salida y hasta perjudicial pudiera ser porque podría estar engañándome y pagando mas tiempo a mis colaboradores. Lo que deseo hacer es que las celdas puedan ser bloqueadas al teclado numérico y solo puedan ser llenadas por medio de la macro de 'registrar hora' (la que comentaba arriba) y que si hubiera algún problema con la luz o que no se pudo abrir el archivo, entonces pueda ser desbloqueado por mí y que les pueda agregar la hora de entrada manual.

Espero darme a entender y agradezco mucho su paciencia y colaboración.

Saludos cordiales

1 respuesta

Respuesta
1

Antes de empezar te recuerdo que en este foro las consultas deben ser finalizadas.

Podemos contemplar que 1 vez se les haya pasado de fecha (en mi caso, solo hago excepciones con 1 consulta sin cerrar) pero si recibes respuesta a tus problemas y luego no finalizas no mereces recibir ayuda, ¿se comprende verdad?

Pasando al tema puntual. Tu macro, la de registrar la hora debe hacer además la tarea de desproteger la hoja (antes de pasar el dato ) y volverla a proteger antes de finalizar.

ActiveSheet. Unprotect "tu clave"

'tus instrucciones de copiado

ActiveSheet. Protect "tu clave"

Si se trata de otra hoja distinta a la activa debes cambiar ActiveSheet por :Sheets("nombre de hoja")

Disculpa, era nuevo y la otra pregunta no lo sabia, lo pondré en practica a ver que resulta, sino me comunicare contigo... en verdad gracias!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas