Διαγραφή γραμμών στο VBA

Anonim

Σε αυτό το άρθρο θα μάθουμε πώς να διαγράφουμε τις γραμμές όταν δεν υπάρχουν δεδομένα σε ολόκληρη τη σειρά.

Ακολουθεί το στιγμιότυπο των δεδομένων που έχουμε:

Η ιδέα πίσω από αυτό το σεμινάριο είναι εάν υπάρχει κάποια πλήρης κενή σειρά που βρίσκεται στην επιλεγμένη περιοχή A1: E10, τότε ο κώδικας vba θα πρέπει να διαγράψει αυτήν τη σειρά.

Πρέπει να ακολουθήσουμε τα παρακάτω βήματα:

  • Κάντε κλικ στην καρτέλα Προγραμματιστής
  • Από την ομάδα κωδικών, επιλέξτε Visual Basic

  • Εισαγάγετε τον ακόλουθο κώδικα στην τρέχουσα μονάδα φύλλου εργασίας

Sub DeleteEntireRow ()

Dim i As Long

Ο υπολογισμός και η ενημέρωση οθόνης απενεργοποιούνται για να επιταχυνθεί η μακροεντολή

Με Εφαρμογή

. Υπολογισμός = xlCalculationManual

.ScreenUpdating = Λάθος

Για i = Selection.Rows.Count To 1 Step -1

Εάν WorksheetFunction.CountA (Selection.Rows (i)) = 0 Τότε

Selection.Rows (i) .EntireRow.Delete

Τέλος εαν

Επόμενο i

. Υπολογισμός = xl Υπολογισμός Αυτόματος

.ScreenUpdating = Αλήθεια

Τέλος με

Τέλος υπο

  • Ας διαγράψουμε πρώτα χειροκίνητα τα δεδομένα σε μια σειρά για να δοκιμάσουμε τον κωδικό μας.
  • Μετά την αντιγραφή του κώδικα. επιλέξτε το εύρος A1: E10 και διαγράψτε με μη αυτόματο τρόπο οποιαδήποτε γραμμή

  • Τώρα εκτελέστε τη μακροεντολή χρησιμοποιώντας το πλήκτρο ALT + F8 και επιλέξτε DeleteEntireRow

  • Η κενή σειρά έχει διαγραφεί και όλες οι παρακάτω σειρές μετατοπίζονται προς τα πάνω.

Με αυτόν τον τρόπο μπορούμε να διαγράψουμε σειρές χρησιμοποιώντας το vba στο Microsoft Excel.

Λήψη-Διαγραφή σειρών στο VBA