Διαγραφή γραμμών βάσει συνθηκών

Anonim

Εάν επιθυμείτε σοβαρά έναν κωδικό VBA που θα σας βοηθήσει προκειμένου να διαγράψετε όλες τις γραμμές με βάση συγκεκριμένο κείμενο που βρίσκεται σε μια συγκεκριμένη στήλη, τότε αυτό το άρθρο είναι για εσάς. Σε αυτό το άρθρο, θα μάθουμε πώς να διαγράφουμε μια γραμμή εάν το συγκεκριμένο κείμενο βρίσκεται σε μια στήλη.

Ερώτηση): Έχω ένα αρχείο όπου χρειάζομαι αυτές τις γραμμές που έχουν "Προϊόν Β" στη στήλη Β. Θέλω να διαγράψω όλα τα άλλα. Μπορεί κάποιος να με βοηθήσει να γράψω μια μακροεντολή; Ακολουθεί το στιγμιότυπο των δεδομένων που έχουμε:

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

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

Εισαγάγετε τον ακόλουθο κώδικα στην τυπική μονάδα:

Sub DeleteRow ()

Με φύλλο 1. κελιά (1). Τρέχουσα περιοχή. Στήλες (2)

.AutoFilter 1, "Product B"

.IntireRow.Delete

Τέλος με

Τέλος υπο

Επεξήγηση κώδικα:

Βήμα 1) Ο παραπάνω κώδικας θα επιλέξει την τρέχουσα περιοχή από τη στήλη 2, δηλαδή τη στήλη προϊόντος

Βήμα 2) Εφαρμογή φίλτρου

Βήμα 3) Τα ορατά κελιά θα διαγραφούν με ολόκληρη τη σειρά. Διαγραφή κώδικα. Τα υπόλοιπα δεδομένα, δηλαδή όπου υπάρχει το προϊόν Β στη στήλη Β, θα είναι η έξοδός μας.

Με αυτόν τον τρόπο, χρησιμοποιώντας τον κώδικα VBA, μπορούμε να διαγράψουμε σειρές που πληρούν συγκεκριμένες προϋποθέσεις.

Λήψη - Διαγραφή γραμμών βάσει συνθηκών - xlsm