Hogyan lehet megakadályozni a mentést, ha egy adott cella üres az Excelben?
Például megtervezett egy űrlapot a munkalapon, és megosztotta a kollégákkal. Reméled, hogy kollégáid kitöltik a nevüket az adott cellába, hogy jelezzék, ki írta be ezt az űrlapot, különben megakadályozhatnák őket az űrlap mentésében, hogyan tehetnéd? Itt bemutatok egy VBA makrót, hogy megakadályozzuk a munkafüzet mentését, ha az adott cella üres az Excelben.
Megakadályozhatja a mentést, ha egy adott cella üres az Excelben
Az aktuális munkafüzet mentésének megakadályozása érdekében, ha az adott cella üres az Excelben, könnyen alkalmazhatja a következő VBA makrót.
1. lépés: Nyissa meg a Microsoft Visual Basic for Applications ablakot a más + F11 gombok közben.
2. lépés: A Project Explorerben bontsa ki a VBAProject (A munkafüzet neve.xlsm) és a Microsoft Excel objektumok, majd kattintson duplán a Ez a munkafüzet. Lásd a bal oldali képernyőképet:
3. lépés: A ThisWorkbook nyíló ablakba illessze be a következő VBA makrót:
VBA makró: A mentés megakadályozása, ha egy adott cella üres
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
Jegyzet: 1. A fenti VBA-kód 26. sorában a "1. lap" az adott munkalap neve, és a "A1"a konkrét cella, és szükség szerint megváltoztathatja őket.
2. Miután beírta a VBA-t Ez a munkafüzet, először mentse el a munkafüzetet. Ezután elküldheti a makróképes fájlt másoknak.
Ha az adott cella üres az aktuális munkafüzetben, a mentéskor megjelenik egy figyelmeztető párbeszédpanel, amely "Mentés törölveLásd a következő képernyőképet:
Kapcsolódó cikkek
A legjobb irodai hatékonyságnövelő eszközök
Töltsd fel Excel-készségeidet a Kutools for Excel segítségével, és tapasztald meg a még soha nem látott hatékonyságot. A Kutools for Excel több mint 300 speciális funkciót kínál a termelékenység fokozásához és az időmegtakarításhoz. Kattintson ide, hogy megszerezze a leginkább szükséges funkciót...
Az Office lap füles felületet hoz az Office-ba, és sokkal könnyebbé teszi a munkáját
- Füles szerkesztés és olvasás engedélyezése Wordben, Excelben és PowerPointban, Publisher, Access, Visio és Project.
- Több dokumentum megnyitása és létrehozása ugyanazon ablak új lapjain, mint új ablakokban.
- 50% -kal növeli a termelékenységet, és naponta több száz kattintással csökkenti az egér kattintását!