Protección de celda solo para fórmulas que usan VBA en Microsoft Excel

Anonim

En este artículo, usaremos el evento de cambio de la hoja de trabajo para proteger las celdas que contienen fórmulas.

Los datos brutos consisten en datos de ventas de los empleados, que incluyen la bifurcación por mes y año.

Queremos conocer las ventas totales por mes, así como por año.

Hemos utilizado la función de suma para calcular las ventas totales de forma mensual y anual. El evento de cambio de la hoja de trabajo se usa para proteger las celdas que contienen fórmulas. Cuando intentamos editar una celda que contiene una fórmula, obtendremos un mensaje emergente que dice que el valor de la celda no se puede cambiar.

Explicación del código

rng.HasFormula

El método HasFormula devolverá True si una celda contiene una fórmula. De lo contrario, devolverá False.

ActiveSheet.Protect

El código anterior se usa para proteger una celda.

Nota: Una celda estará protegida solo si está bloqueada. Entonces, antes de proteger una celda, debe estar bloqueada.

ActiveSheet.Unprotect

El código anterior se usa para desproteger una celda.

Siga a continuación para obtener el código

 'Agregue el siguiente código en el módulo de la hoja de trabajo Opción Explícita Private Sub Worksheet_SelectionChange (ByVal Target As Range) Dim rng As Range For Each rng In Target.Cells If rng.HasFormula Then ActiveSheet.Protect Else ActiveSheet.Unprotect End If Next rng End Sub 

Si te gustó este blog, compártelo con tus amigos en Facebook. Además, puede seguirnos en Twitter y Facebook.

Nos encantaría saber de usted, háganos saber cómo podemos mejorar nuestro trabajo y hacerlo mejor para usted. Escríbanos al sitio de correo electrónico