¿Cómo evitar guardar el archivo en Excel si una celda específica está en blanco?
Imagine que ha creado un formulario en Excel y lo ha compartido con sus compañeros. Quiere que cada uno escriba su nombre en una celda específica para identificar quién introdujo la información. Si esa celda se deja en blanco, desea evitar que se guarde el formulario. En este tutorial, le mostraré cómo usar una macro de VBA para bloquear el guardado cuando la celda designada esté vacía en Excel.
Evite 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, puede aplicar fácilmente la siguiente macro de VBA.
Paso 1: Abra la ventana de Microsoft Visual Basic para Aplicaciones pulsando simultáneamente las teclas Alt+F11.
Paso 2: En el Explorador de proyectos, expanda VBAProject (Su Nombre del libro de trabajo.xlsm) y Microsoft Excel Objetos, y luego haga doble clic en EsteLibro. Vea la captura de pantalla:

Paso 3: En la ventana de EsteLibro que se abre, pegue la siguiente macro de VBA:
Macro de 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 "Hoja1"es la Nombre de la hoja de cálculo específica y la "A1es la celda específica; puede ajustar ambos según sus necesidades.
2. Después de introducir el código VBA en EsteLibroPrimero debe guardar el libro. A continuación, podrá enviar el archivo habilitado para macros a otras personas.
Ahora, si la celda específica está en blanco en el libro de trabajo actual, al intentar guardarlo aparecerá un cuadro de diálogo de advertencia con el mensaje: "Guardado cancelado". Consulte la siguiente captura de pantalla:

Artículos relacionados
¿Cómo copiar filas cuando una columna contiene un texto o valor específico en Excel?
¿Cómo copiar celdas cuando una columna contiene un valor o texto específico en Excel?
Las mejores herramientas de productividad para Office
Potencie sus habilidades en Excel con Kutools para Excel y experimente una eficiencia como nunca antes.Kutools para Excel ofrece más de 300 funciones avanzadas para aumentar su productividad y Ahorrar tiempo.Haga clic aquí para obtener la función que más necesita...
Office Tab aporta una interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil
- Active la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abra y cree varios documentos en nuevas pestañas dentro de la misma ventana, en lugar de hacerlo en ventanas separadas.
- ¡Aumente su productividad en un 50 % y elimine cientos de clics del ratón cada día!
Todos los complementos de Kutools en un solo instalador.
Kutools for Office es la suite que incluye complementos para Excel, Word, Outlook y PowerPoint, además de Office Tab Pro, ideal para equipos que trabajan en distintas aplicaciones de Office.
- Suite integral— complementos para Excel, Word, Outlook y PowerPoint + Office Tab Pro
- Un instalador, una licencia— configuración en minutos (compatible con MSI)
- Rendimiento mejorado en conjunto— productividad optimizada en todas las aplicaciones de Office
- Prueba gratuita de 30 días con todas las funciones— sin registro ni tarjeta de crédito
- La mejor relación calidad-precio— ahorre frente a la compra individual de complementos