UniversoExcelForo

Respuesta a consultas.
Fecha de creación: 09.Abril.2012

Fundadores: Wibly,Tyno,Servando,Sakkar,Rosendo2,RMaximo,Railar,Mcoronel,Ioyama,Igtelo,Hugotron,Drochar,Dedos,Alberto,Adolfo

No se pueden hacer consultas de Excel o VBA por mensaje privado.
Utiliza el botón buscar del foro y te ahorras tiempo para obtener "ayuda".

No estás conectado. Conéctate o registrate

Ver el tema anterior Ver el tema siguiente Ir abajo  Mensaje [Página 1 de 1.]

Leo-


Buen día Sres.
Pudieran ayudarme en darme alguna sugerencia de como poder lograr lo siguiente?:

En el libro que adjunto se encuentran algunos datos en la columna AQ y AS, quisiera me ayudaran a poder limitar que cuando en la columna "AQ" al momento de especificar "COMPLETO" quede bloqueado y no se pueda modificar su estado, a la par cuando AQ es confirmado y como completo "AS" le aplique la función =Ahora() la fecha y hora en que quedó cerrado - solucionado, aqui mismo que al aplicarse esta función ya no se pueda corregir, es decir que no se esté actualziando y quede registrado con la última actualización cuando se confirmó y se cerró sin que la formula se esté actualizando.
Cada renglon sera un cierre separado por lo que la confirmación y hora serán independientes.

Un saludo
Archivos
Sheet1.xls
No tienes los permisos para descargar los archivos.
(20 KB)

servando


Buen día Leo.

Creoq ue una solución a lo que preguntas puede ser con:

Private Sub Worksheet_Change(ByVal Target As Range)

'Si estoy en una celda de la columna AQ=43 y su contenido es "COMPLETO"
If ActiveCell.Column = 43 And ActiveCell = "COMPLETO" Then
    'Poner fecha y hora en la columna AS=45
    ActiveCell.Offset(0, 2) = Now()
    'Desbloquear hoja
    ActiveSheet.Unprotect
    'Bloquear las celdas de toda la fila.
    Rows(ActiveCell.Row).Locked = True
    'Bloquear hoja
    ActiveSheet.Protect DrawingObjects:=False, Contents:=True, Scenarios:=False
End If

End Sub

Un saludo desde Vitoria.
Archivos
Copia de Sheet1.xls
No tienes los permisos para descargar los archivos.
(39 KB)

Leo-


Hola servando
Resulta que la hoja en sí, la tengo bloqueada ya que se manejan en la misma hoja $$ingresos y es trabajado por varion colaboradores, para que a su vez llenado todos los datos accese y pueda ver sus equivalencies, es decir; cuando ingrese desbloqueando la hoja se modificará de Nuevo la function =ahora().

Tendrás alguna otra alternative que pudiera cumplir con este requisite adicional que no mencione?
Muchas gracias

servando


Buen día Leo.

Si te fijas en la macro pongo el valor de Now() en el momento de poner en la celda COMPLETADO y esto no se actulizará a menos que desbloquee la hoja manualmente cambie la celda a INCOMPLETO y luego la vuelva a poner en COMPLETADO.

Un saludo desde Vitoria, Servando

Leo-


Que tal servando
Tienes razón en lo que comentas, sin embargo me resulta el siguiente error al momento de ejecutarlo y/o pasar el código al format original y es el siguiente:

"Se ha producido el error '-2147417848 (80010108)' en tiempo de ejecución:
Error en el método '_Default' de objeto 'Range'

servando


Buen día Leo.

Recuerda que esto no es un maco para poner dentro de un Módulo, esto es un evento que hay que colocar dentro de la propia hoja.

De todas forma si quieres me mandas el archivo que te da error y lo reviso para ver si encuentro el porqué.

Un saudo desde Vitoria, Servando

Leo-


Hola de nuevo servando
He realizado pruebas con el mismo archivo del que me diste respuesta, si pudieras revisarlo por favor observarás que el mismo está bloqueado en la columna "AQ" y este en realidad necesitaría estubiera liberado y solo hasta seleccionar "completo" quede bloqueado para que no pueda ser modificado, otro punto es; estando ya desbloqueda la columna "AQ" hago ejercicios modificando los estatus completo a incompleto y viceversa dandome conflictos excel y se cierra.

Gracias.

servando


Buen día Leo.

Estaban las celdas de la columna "AQ" sin quitar el bloqueo. Las he desbloqueado y probado de nuevo y parece que va bien.
Recuerda que si quieres cambiar datos de una fila que está en estado "COMPLETADO" debes desbloquear la hoja manualmente.

Prueba el archivo y comentamos resultados.

Un saludo desde Vitoria, Servando.

servando


Olvidé adjuntar el archivo.

Saludos
Archivos
Copia de Sheet1-1.xls
No tienes los permisos para descargar los archivos.
(40 KB)

Leo-


Que tal servando

Me sigue arrojando varias fallas, una de ellas es; si desbloqueo su estado para ponerlas todas en "Incompleto" o si desbloqueo la columna AQ para borrar su estado y comenzar a su aplicación siempre me arroja este aviso: "Se ha producido el error '-2147417848 (80010108)' en tiempo de ejecución:
Error en el método '_Default' de objeto 'Range'
Entonces no puedo trabajar con el, y hacer intentos ya que sigue presentando conflictos y se cierra todo el excel que tenga abierto.

Todos los ejercicios que te menciono los he realizado en los mismos ejemplos a las respuestas que me has sugerido.
Sigo atento a tus comentarios, muchas gracias.

marcohr


Buenas tardes Leo
Te dejo esta solución que creo soluciona tu problema de la function volatil que refieres:

Inserta un modulo y pegas el código:

Function Ahora_estática(Celda As Range) As Date
 Volatile = False
 Ahora_estática = Now
 End Function

Bien, ahora realiza un pequeño ajuste a tu formula que indicas en la columna AS, corrigiendo esta;
=SI(AQ6="COMPLETO",AHORA(),SI(AQ6="INCOMPLETO","PENDIENTE")) por la siguiente

=SI(AQ6="COMPLETO",Ahora_estática(AQ6),SI(AQ6="INCOMPLETO","PENDIENTE"))

 saludos Marco

Leo-


Gracias Marco, ya tengo el 50% de solucionado mi problema, ahora espero alguien me ayude con la primer necesidad que es la de permitir seleccionar una sola occasion y al señalar "completo" esa celda quede bloqueada.

servando


Buen día Leo.

Espero que ahora funcione algo mejor el fichero que te adjunto.

Para desbloquear una fila sitúate en la celda de "ESTADO" y haz doble click, se abrirá una ventana y dentro de esta teclea "123" luego en el boton "INTRO" sin moverte de la celda cambia el estado.

Un saludo desde Vitoria, Servando
Archivos
Desbloquear.xls
No tienes los permisos para descargar los archivos.
(61 KB)

Leo-


Muchas gracias servando, funciona tal y como lo deceaba.

un abrazo.

Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje [Página 1 de 1.]

Permisos de este foro:
No puedes responder a temas en este foro.