Hur kan jag förhindra att spara om en specifik cell är tom i Excel?
Till exempel designade du ett formulär i kalkylbladet och delade med dina kollegor. Du hoppas att dina kollegor fyller i deras namn i den specifika cellen för att ange vem som har angett det här formuläret, annars hindrar de dem från att spara formuläret, hur kan du göra det? Här introducerar jag ett VBA-makro för att förhindra att en arbetsbok sparas om den specifika cellen är tom i Excel.
Förhindra att spara om specifik cell är tom i Excel
För att förhindra att du sparar aktuell arbetsbok om den specifika cellen är tom i Excel, kan du enkelt använda följande VBA-makro.
Steg 1: Öppna Microsoft Visual Basic for Applications-fönstret genom att trycka på andra + F11 nycklar under tiden.
Steg 2: I Project Explorer expanderar du VBAProject (Ditt arbetsboknamn.xlsm) och Microsoft Excel-objektoch dubbelklicka sedan på Denna arbetsbok. Se skärmdump till vänster:
Steg 3: Klistra in följande VBA-makro i fönstret ThisWorkbook:
VBA-makro: Förhindra sparar om en specifik cell är tom
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
Notera: 1. I den 26:e raden i ovanstående VBA-kod visas "Sheet1" är det specifika kalkylbladets namn och "A1"är den specifika cellen, och du kan ändra dem efter behov.
2. När du har skrivit in VBA i Denna arbetsbok, bör du spara arbetsboken först. Och sedan kan du skicka den makroaktiverade filen till andra.
Om den specifika cellen är tom i den aktuella arbetsboken kommer en varningsdialogruta ut när du sparar den och säger "Spara avbruten". Se följande skärmdump:
Relaterade artiklar
Hur kontrollerar eller hittar jag om cellen innehåller specifik sträng / text / ord i Excel?
Hur kopierar jag rader om kolumnen innehåller specifik text / värde i Excel?
Hur kopierar jag celler om kolumnen innehåller specifikt värde / text i Excel?
Bästa kontorsproduktivitetsverktyg
Uppgradera dina Excel-färdigheter med Kutools för Excel och upplev effektivitet som aldrig förr. Kutools för Excel erbjuder över 300 avancerade funktioner för att öka produktiviteten och spara tid. Klicka här för att få den funktion du behöver mest...
Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare
- Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
- Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
- Ökar din produktivitet med 50 % och minskar hundratals musklick för dig varje dag!