Realizar una acción en VBA cuando cambie el valor de una celda
He estado probando cómo conseguir que, mediante VBA, cuando cambie el valor de una celda, y solo en ese caso, se produzca una acción concreta, por ejemplo, ocultar una fila. Si lo hago con Worksheet_Change, me "re-calcula" cada vez que hay un cambio en la hoja.
Por ejemplo, para que me entendáis, tengo este código:
Private Sub Worksheet_Change(ByVal Target As Range) Application.ScreenUpdating = False ActiveSheet.Unprotect If Range("W4").Value = "OCULTAR" Then Rows("4:4").EntireRow.Hidden = True ' Si pone None oculta Else Rows("4:4").EntireRow.Hidden = False ' Si no lo pone las desoculta. End If If Range("W5").Value = "OCULTAR" Then Rows("5:5").EntireRow.Hidden = True ' Si pone None oculta Else Rows("5:5").EntireRow.Hidden = False ' Si no lo pone las desoculta. End If If Range("W6").Value = "OCULTAR" Then Rows("6:6").EntireRow.Hidden = True ' Si pone None oculta Else Rows("6:6").EntireRow.Hidden = False ' Si no lo pone las desoculta. End If If Range("W7").Value = "OCULTAR" Then Rows("7:7").EntireRow.Hidden = True ' Si pone None oculta Else Rows("7:7").EntireRow.Hidden = False ' Si no lo pone las desoculta. End If ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _ , AllowSorting:=True, AllowFiltering:=True End Sub
1 Respuesta
Respuesta de Elsa Matilde
1