Ayuda con macro

Hola buen día:
Me podría ayudar a localiza el error en la siguiente sintaxis ya que por mas que la intento buscar no la encuentro, lo que esta en negrito es donde me aparece el error
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column < 6 Then
Cells(Target.Row, 6).Value = Now
End If
End Sub
-----------------------------------------------------------------------------
Private Sub Workbook_Open()
Worksheets("09-00 AM").Protect "aBc", 1, 1, 1, 1
End Sub
------------------------------------------------------------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Count > 1 Then ActiveCell.Select
With ActiveCell
If .Locked Then Exit Sub
If Not IsEmpty(ActiveCell) And Not .Locked Then .Locked = True
End With
End Sub

1 Respuesta

Respuesta
1

No veo cuál línea está en negritas, puedes decirme cuál es la línea, qué mensaje de error te aparece y en qué momento te aparece el error.

Saludos. Dante Amor

Hola primero que nada muchas gracias por su valiosa ayuda, la linea es

If Not IsEmpty(ActiveCell) And Not .Locked Then .Locked = True

Al momento de hacer la prueba me envía a código y me dice que error de sintaxis 1004, ya le di vueltas y no me encuentro el error

Te envía ese error porque está tu hoja protegida. Cuando abres el libro estás protegiendo la hoja:

Private Sub Workbook_Open()
Worksheets("09-00 AM").Protect "aBc", 1, 1, 1, 1
End Sub

Lo que tienes que hacer es desproteger la hoja, bloquear la celda y después volver a proteger la hoja, así:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Count > 1 Then ActiveCell.Select

Worksheets("09-00 AM").UnProtect "aBc"
With ActiveCell
If Not IsEmpty(ActiveCell) And Not .Locked Then .Locked = True
End With

Worksheets("09-00 AM").Protect "aBc", 1, 1, 1, 1
End Sub

Revisa que ya quité esta instrucción:

If .Locked Then Exit Sub

Saludos. DAM

No olvides finalizar la pregunta

Gracias, mira la idea de trabajo de mi archivo es que cuando de OK en la celda E4 la celda F4 aparezca la hora y fecha pero al mismo tiempo donde ingrese el dato que es la celda E4 se bloquee y por ende no lo puedan modificar. te comento con la formula que planifique al inicio que es esta:

Me podría ayudar a localiza el error en la siguiente sintaxis ya que por mas que la intento buscar no la encuentro, lo que esta en negrito es donde me aparece el error

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column < 6 Then
Cells(Target.Row, 6).Value = Now
End If
End Sub
-----------------------------------------------------------------------------
Private Sub Workbook_Open()
Worksheets("09-00 AM").Protect "aBc", 1, 1, 1, 1
End Sub
------------------------------------------------------------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Count > 1 Then ActiveCell.Select
With ActiveCell
If .Locked Then Exit Sub
If Not IsEmpty(ActiveCell) And Not .Locked Then .Locked = True
End With
End Sub

ya me aparecía pero me aparece el mismo error y al momento de correr el código que me enviío si me aparece la hora y fecha pero el inconveniente es que no me bloquea la celda al momento de dar ok en la celda E4

Cambia tus 3 macros por esto

Private Sub Workbook_Open()
Worksheets("09-00 AM").Protect "aBc", 1, 1, 1, 1
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
'Por.DAM
If Not Intersect(Target, Columns("E")) Is Nothing Then
  Worksheets("09-00 AM").Unprotect "aBc"
  If Target.Count > 1 Then Exit Sub
  Cells(Target.Row, "F") = Now
  If Not IsEmpty(Target) And Not Target.Locked Then Target.Locked = True
  Worksheets("09-00 AM").Protect "aBc", 1, 1, 1, 1
End If
End Sub

Saludos.DAM
No olvides finalizar la pregunta

Hola buen dia, he validado que si corre correctamente la macro pero no me bloquea del todo la celda lo único que realiza es que no puedo dar ctrl + z para regresar el dato pero lo que yo requiero es que se bloquee para no hacer ninguna modificación ya que se trata de un archivo de monitoreo, sabrás por que motivo no me bloquea completamente la celda??

En mis pruebas sí bloquea la celda.

Escribe algo en alguna celda de la columna E.

La macro te pone en la columna F la fecha y te bloquea la celda de la columna E.

Prueba en un libro nuevo.

Revisa que la hoja esté protegida.

¿Tienes celdas combinadas?

Cuando utilizas una macro ya no se pueden deshacer los cambios con Control+Z

Una disculpa enorme dante no puedo tampoco haciéndolo en una hoja nueva :( tendrás algún correo donde te envíe mi archivo para que lo valides por que ya le moví a todo hojas protegidas ya intente en un libro nuevo y tampoco me deja no veo en que me este equivocando y sobre las celdas combinadas dentro del mismo archivo que tengo hay una hoja donde refleja todo el concentrado del monitoreo del dia entonces ahi tengo que el resultado de la fecha de EJEMPLO: 07-00 me aparezca en una fila del concentrado que se llama CHECKLIST CONCENTRADO, entonces igual y eso puede ser vdd tu que opinas??

¿Envíame tu archivo y dime con claridad en qué hoja quieres trabajar?

También dime si esto es lo que necesitas: "mira la idea de trabajo de mi archivo es que cuando de OK en la celda E4 la celda F4 aparezca la hora y fecha pero al mismo tiempo donde ingrese el dato que es la celda E4 se bloquee"

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas