Πώς να αποφύγετε την αποθήκευση εάν ένα συγκεκριμένο κελί είναι κενό στο Excel;
Για παράδειγμα, σχεδιάσατε μια φόρμα στο φύλλο εργασίας και μοιραστείτε με τους συναδέλφους σας. Ελπίζουμε οι συνάδελφοί σας να συμπληρώσουν τα ονόματά τους στο συγκεκριμένο κελί για να υποδείξουν ποιος εισήλθε σε αυτήν τη φόρμα, διαφορετικά να τους αποτρέψετε να αποθηκεύσουν τη φόρμα, πώς θα μπορούσατε να το κάνετε; Εδώ θα παρουσιάσω μια μακροεντολή VBA για να αποτρέψω την αποθήκευση ενός βιβλίου εργασίας εάν το συγκεκριμένο κελί είναι κενό στο Excel.
Αποτρέψτε την αποθήκευση εάν ένα συγκεκριμένο κελί είναι κενό στο Excel
Για να αποφύγετε την αποθήκευση του τρέχοντος βιβλίου εργασίας εάν το συγκεκριμένο κελί είναι κενό στο Excel, μπορείτε να εφαρμόσετε εύκολα την ακόλουθη μακροεντολή VBA.
Βήμα 1: Ανοίξτε το παράθυρο της Microsoft Visual Basic for Applications πατώντας το άλλος + F11 κλειδιά στο μεταξύ.
Βήμα 2: Στην Εξερεύνηση έργου, αναπτύξτε το VBAProject (Το όνομα του βιβλίου εργασίας σας.xlsm) και Αντικείμενα του Microsoft Excelκαι, στη συνέχεια, κάντε διπλό κλικ στο Αυτό το βιβλίο εργασίας. Δείτε το στιγμιότυπο οθόνης αριστερά:
Βήμα 3: Στο άνοιγμα του παραθύρου ThisWorkbook, επικολλήστε την ακόλουθη μακροεντολή VBA:
Μακροεντολή VBA: Αποτρέψτε την αποθήκευση εάν το συγκεκριμένο κελί είναι κενό
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
Σημείωση: 1. Στην 26η σειρά του παραπάνω κώδικα VBA, το "Φύλλο 1" είναι το συγκεκριμένο όνομα του φύλλου εργασίας και το "A1είναι το συγκεκριμένο κελί και μπορείτε να τα αλλάξετε όπως χρειάζεστε.
2. Αφού εισαγάγετε το VBA Αυτό το βιβλίο εργασίας, θα πρέπει πρώτα να αποθηκεύσετε το βιβλίο εργασίας. Στη συνέχεια, μπορείτε να στείλετε το αρχείο με δυνατότητα μακροεντολής σε άλλους.
Τώρα, εάν το συγκεκριμένο κελί είναι κενό στο τρέχον βιβλίο εργασίας, όταν το αποθηκεύσετε, βγαίνει ένα παράθυρο διαλόγου προειδοποίησης και σας λέει "Η αποθήκευση ακυρώθηκε". Δείτε το παρακάτω στιγμιότυπο οθόνης:
Σχετικά άρθρα
Πώς να αντιγράψετε σειρές εάν η στήλη περιέχει συγκεκριμένο κείμενο / τιμή στο Excel;
Πώς να αντιγράψετε κελιά εάν η στήλη περιέχει συγκεκριμένη τιμή / κείμενο στο Excel;
Τα καλύτερα εργαλεία παραγωγικότητας γραφείου
Αυξήστε τις δεξιότητές σας στο Excel με τα Kutools για Excel και απολαύστε την αποτελεσματικότητα όπως ποτέ πριν. Το Kutools για Excel προσφέρει πάνω από 300 προηγμένες δυνατότητες για την ενίσχυση της παραγωγικότητας και την εξοικονόμηση χρόνου. Κάντε κλικ εδώ για να αποκτήσετε τη δυνατότητα που χρειάζεστε περισσότερο...
Το Office Tab φέρνει τη διεπαφή με καρτέλες στο Office και κάνει την εργασία σας πολύ πιο εύκολη
- Ενεργοποίηση επεξεργασίας και ανάγνωσης καρτελών σε Word, Excel, PowerPoint, Publisher, Access, Visio και Project.
- Ανοίξτε και δημιουργήστε πολλά έγγραφα σε νέες καρτέλες του ίδιου παραθύρου και όχι σε νέα παράθυρα.
- Αυξάνει την παραγωγικότητά σας κατά 50% και μειώνει εκατοντάδες κλικ του ποντικιού για εσάς κάθε μέρα!