Saltar al contenido
PROGRAMAR EN VBA MACROS DE EXCEL

Como VALIDAR INGRESO de UNA FORMULA en Celda con MACRO EXCEL VBA #561

validacion en excel permitir solo ingreso de formulas

PERMITIR EL INGRESO SOLAMENTE DE FORMULAS EN CELDAS EXCEL

En este ejemplo se muestra como crear una validación con macro que permita ingresar solamente formulas en las celdas de Excel, la validación se crea con macros de Excel VBA.

Aprende a manejar Excel, click acá, si quieres aprender sobre Excel en inglés, entonces debes hacer click here. Si lo que necesitas es aprender o profundizar sobre la programación de macros con VBA este es unos de los mejores cursos on line que he visto en internet, te lo recomiendo no te arrepentirás.

  
 

Mira la macro en acción, una explicación más detallada de su codificación y funcionamiento, recomiendo observar para una más fácil comprensión de la macro; suscribe a nuestro canal de You Tube, mira el playlist con  vídeos relacionados donde podrás ver la macros relacionadas en acción con una explicación en forma visual que ayudará a entender el ejemplo en forma más fácil.

MACRO de Excel que Permite Ingreso de Formulas Únicamente

Este ejemplo forma es muy sencillo al insertar un nuevo dato en cualquier celda de la columna «A», la macro crea una validación de datos en la columna G, donde solamente permite ingresar fórmulas en la celda de la columna G y fila en la cual se insertó el dato. 

Explicación código VBA para validar ingreso de formulas en Excel

El código se encuentra en la hoja1 en Worksheet, evento Change, cuando se modifica algún dato  de la columna A y cualquier fila de dicha columna, excepto la fila 1, se ejecuta la macro, para detectar si la modificación se produjo en la columna A se usa el siguiente código:

If Target.Row > 1 And Target.Column = 1 Then

Luego se crea un objeto con la hoja1, así
Set a = Sheets(«Hoja1»)

Luego se crea la fórmula que valida que solo se ingrese formulas en las celdas de la columna «G», con el siguiente código:

valida1 = «=ISFORMULA(G» & Target.Row & «)»

Luego se agrega la validación en la celda propiamente dicha con el siguiente código:

With a.Cells(Target.Row, «G»).Validation
.Delete
.Add Type:=xlValidateCustom, AlertStyle:=xlValidAlertStop, Formula1:=valida1 ‘=ESFORMULA(C11)
.ErrorTitle = «Dato inválido»
.ErrorMessage = «Solo Puede INGRESAR FORMULAS en esta celda»
End With

Nótese que la validación es de tipo personalizada y la fórmula es la habíamos creado y cargado en la variable valida1.

Código VBA para crear una validación en celda al insertar un dato

Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Target.Row > 1 And Target.Column = 1 Then
Application.ScreenUpdating = False
Set a = Sheets(«Hoja1»)
valida1 = «=ISFORMULA(G» & Target.Row & «)»

With a.Cells(Target.Row, «G»).Validation
.Delete
.Add Type:=xlValidateCustom, AlertStyle:=xlValidAlertStop, Formula1:=valida1 ‘=ESFORMULA(C11)
.ErrorTitle = «Dato inválido»
.ErrorMessage = «Solo Puede INGRESAR FORMULAS en esta celda»
End With

End If
Application.ScreenUpdating = True
End Sub

Sub BORRA()
Sheets(«Hoja1»).Range(«G:G»).Validation.Delete
MsgBox («La validación se eliminó con éxito»), vbInformation, «https://macrosenexcel.com»
End Sub



Descarga el Libro Excel como Permitir Solo Ingreso de Formulas en Celdas Excel

Descarga desde acá el archivo usado como ejemplo en este post y en el vídeo explicativo, el mismo es totalmente gratuito y libre su uso, solicito aportar para sostener esta web, si está dentro de tus posibilidades, desde ya muchas gracias.

Si te fue de utilidad puedes INVITARME UN CAFÉ y de esta manera ayudar a seguir manteniendo la página, CLICK para descargar en ejemplo en forma gratuita.

If this post was helpful INVITE ME A COFFEE and so help keep up the page, CLICK to download free example.

Donate:
Cuenta Paypal: https://paypal.me/programarexcel
Cuenta Bitcoin: 1KBGGb8fyDzyR3X1Rie6m7VguzaAfngNbd
Cuenta Ether: 0x41Bbd24556914C83a31217eBb3BC49789b66e407