¿Cómo evitar guardar si una celda específica está en blanco en Excel?
Imagina que has creado un formulario en Excel y lo has compartido con tus colegas. Quieres que ellos escriban sus nombres en una celda específica para identificar quién ingresó la información. Si la celda se deja en blanco, quieres evitar que el formulario se guarde. En este tutorial, te mostraré cómo usar una macro VBA para bloquear el proceso de guardado si la celda designada está vacía en Excel.
Evitar guardar si una celda específica está en blanco en Excel
Para evitar guardar el libro de trabajo actual si una celda específica está en blanco en Excel, puedes aplicar fácilmente la siguiente macro VBA.
Paso 1: Abre la ventana de Microsoft Visual Basic para Aplicaciones presionando las teclas Alt + F11 al mismo tiempo.
Paso 2: En el Explorador de Proyectos, expande VBAProject (Nombre de tu libro de trabajo.xlsm) y Objetos de Microsoft Excel, y luego haz doble clic en ThisWorkbook. Ver captura de pantalla:
Paso 3: En la ventana ThisWorkbook que se abre, pega la siguiente macro VBA:
Macro VBA: Evitar guardar si una celda específica está en blanco
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
'Update by ExtendOffice 20220907
Dim xFileName As String
Dim xStr As String
Dim xStrWSH As String
Dim xWSh As Worksheet
Dim xWShs As Sheets
Dim xWSh1 As Worksheet
Dim xWB As Workbook
xStrWSH = "xHidWSH_LJY"
On Error Resume Next
Set xWB = Application.ActiveWorkbook
Set xWShs = xWB.Worksheets
Set xWSh = xWShs.Item(xStrWSH)
If xWSh Is Nothing Then
Set xWSh1 = xWShs.Add
xWSh1.Name = xStrWSH
xWSh1.Visible = xlSheetVeryHidden
Cancel = False
Else
If Trim(Application.Sheets("Sheet1").Range("A1").Value) = "" Then
Cancel = True
MsgBox "Save cancelled"
End If
End If
End Sub
Nota: 1. En la fila 26 del código VBA anterior, el "Sheet1" es el nombre de la hoja de cálculo específica, y "A1" es la celda específica, y puedes cambiarlas según sea necesario.
2. Después de ingresar el VBA en ThisWorkbook, primero debes guardar el libro de trabajo. Luego puedes enviar el archivo habilitado para macros a otros.
Ahora, si la celda específica está en blanco en el libro de trabajo actual, cuando intentes guardarla, aparecerá un cuadro de diálogo de advertencia indicando "Guardado cancelado". Ver la siguiente captura de pantalla:
Artículos relacionados
¿Cómo verificar o buscar si una celda contiene una cadena/texto/palabra específica en Excel?
¿Cómo copiar filas si una columna contiene un texto/valor específico en Excel?
¿Cómo copiar celdas si una columna contiene un valor/texto específico en Excel?
Las mejores herramientas de productividad para Office
Potencia tus habilidades en Excel con Kutools para Excel y experimenta una eficiencia sin precedentes. Kutools para Excel ofrece más de300 funciones avanzadas para aumentar la productividad y ahorrar tiempo. Haz clic aquí para obtener la función que más necesitas...
Office Tab lleva la interfaz de pestañas a Office y facilita mucho tu trabajo
- Habilita la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abre y crea varios documentos en nuevas pestañas de la misma ventana, en lugar de nuevas ventanas.
- ¡Aumenta tu productividad en un50% y reduce cientos de clics de ratón cada día!