Προσθέστε αλλαγές σελίδας σε ταξινομημένα δεδομένα χρησιμοποιώντας VBA στο Microsoft Excel

Anonim

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

Τα ακατέργαστα δεδομένα αποτελούνται από σοφά δεδομένα, τα οποία περιλαμβάνουν όνομα πράκτορα, όνομα πελάτη, αριθμό τηλεφώνου και αναγνωριστικό ηλεκτρονικού ταχυδρομείου.

Θέλουμε δεδομένα ενός συγκεκριμένου πράκτορα σε ξεχωριστές σελίδες κατά την εκτύπωση. Έτσι, θέλουμε να εισαγάγουμε μια αλλαγή σελίδας στο τέλος των δεδομένων κάθε πράκτορα.

Λογική εξήγηση

Δημιουργήσαμε τη μακροεντολή "InsertingPagebreak" για να εισαγάγουμε μια αλλαγή σελίδας. Κάνουμε σύγκριση τιμών 2 συνεχόμενων κελιών στην πρώτη στήλη για να βρούμε το τελευταίο κελί που σχετίζεται με έναν συγκεκριμένο παράγοντα και εισάγουμε μια αλλαγή σελίδας.

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

ActiveSheet.ResetAllPageBreaks

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

If Cells (LngRow, LngCol). Value Cells (LngRow - 1, LngCol). Τιμή Στη συνέχεια

Ο παραπάνω κώδικας χρησιμοποιείται για τη σύγκριση διαδοχικών κελιών στην πρώτη στήλη.

ActiveWindow.SelectedSheets.HPageBreaks.Add Before: = Κελιά (LngRow, LngCol)

Ο παραπάνω κώδικας χρησιμοποιείται για την εισαγωγή αλλαγών σελίδας πριν από καθορισμένα κελιά.

Ακολουθήστε παρακάτω για τον κωδικό

Sub InsertingPagebreak () 'Δήλωση μεταβλητών Dim LngCol As Long Dim LngRow, MaxRow As Long' Διαγραφή υπάρχουσας σελίδας σπάει ActiveSheet.ResetAllPageBreaks LngCol = 1 'Λήψη αριθμού σειράς τελευταίου κελιού MaxRow = Range ("A11"). SpecialCells (xlCellTypeLastCell 'Looping through all the lines ξεκινώντας από τη δέκατη τρίτη σειρά For LngRow = 13 To MaxRow' Σύγκριση τιμών στο κελί δύο διαδοχικών σειρών για την καθορισμένη στήλη If Cells (LngRow, LngCol). Values ​​Cells (LngRow - 1, LngCol). Value then " Εισαγωγή αλλαγής σελίδας ActiveWindow.SelectedSheets.HPageBreaks.Add Before: = Κελιά (LngRow, LngCol) Τέλος εάν επόμενο LngRow End Sub 

Αν σας άρεσε αυτό το blog, μοιραστείτε το με τους φίλους σας στο Facebook. Επίσης, μπορείτε να μας ακολουθήσετε στο Twitter και το Facebook.

Θα θέλαμε πολύ να σας ακούσουμε, ενημερώστε μας πώς μπορούμε να βελτιώσουμε το έργο μας και να το κάνουμε καλύτερο για εσάς. Γράψτε μας στον ιστότοπο email