Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: tony82 en 13 Marzo 2009, 16:36 pm



Título: macro para inabilitar celda en excel
Publicado por: tony82 en 13 Marzo 2009, 16:36 pm
Buenos dias,
estoy realizando una macro en excel, la cual al ingresar un dato en una celda, esta quede inabilitada.

tengo el siguiente codigo.
Código:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

If Worksheets("hoja1").Cells(2, 1) <> Empty Then
If Target.Address = "$A$2" Then Target.Offset(0, 1).Select
End If
End Sub
pero lo que necesito es que al ingresar el dato se oprima un boton y este inabilite la celda que se le ingreso un dato, es como una serie de matriz. que recorra las filas y columnas y inabilite las celdas  :huh:

muchas gracias por su colaboracion.

tony82


Título: Re: macro para inabilitar celda en excel
Publicado por: Novlucker en 13 Marzo 2009, 16:54 pm
Y que tal si seleccionas la planilla completa y cambias los atributos de todas las celdas desde Formato > Celda > Proteger, desmarcando el "bloqueado" (por defecto viene todo bloqueado)
Luego vas a Herramientas > Proteger hoja y lo habilitas, tienes la opción de elegir que será lo que se bloqueará.

De este modo estará bloqueado ficticiamente, ya que la hoja estará bloqueada pero las celdas no estarán marcadas para esto.

Luego si, desde una macro recorres la hoja verificando el valor de la celda, si tiene contenido entonces:

Código
  1. Selection.Locked = True
Con esto quedará bloqueada la celda, es un poco "chapuza" pero funciona  ;D

Saludos