Πώς να αφαιρέσετε κενές στήλες στο Excel

  • Μοιραστείτε Αυτό
Michael Brown

Το σεμινάριο θα σας διδάξει πώς να αφαιρείτε κενές στήλες στο Excel με μια μακροεντολή, έναν τύπο και ένα κλικ στο κουμπί.

Όσο τετριμμένο κι αν ακούγεται, η διαγραφή κενών στηλών στο Excel δεν είναι κάτι που μπορεί να επιτευχθεί με ένα απλό κλικ του ποντικιού. Ούτε μπορεί να γίνει με δύο κλικ. Η προοπτική να επανεξετάσετε όλες τις στήλες στο φύλλο εργασίας σας και να αφαιρέσετε τις κενές στήλες χειροκίνητα είναι σίγουρα κάτι που θα θέλατε να αποφύγετε. Ευτυχώς, το Microsoft Excel παρέχει πολλές διαφορετικές δυνατότητες και χρησιμοποιώντας αυτές τιςχαρακτηριστικά με δημιουργικούς τρόπους μπορείτε να αντιμετωπίσετε σχεδόν κάθε εργασία!

    Γρήγορος τρόπος για να διαγράψετε κενές στήλες που δεν πρέπει ποτέ να χρησιμοποιήσετε

    Όταν πρόκειται για την αφαίρεση κενών στο Excel (είτε πρόκειται για κενά κελιά, γραμμές ή στήλες), πολλοί διαδικτυακοί πόροι βασίζονται στην εντολή Πηγαίνετε στο Special >, Κενά εντολή. Ποτέ μην το κάνεις αυτό στα φύλλα εργασίας σας!

    Αυτή η μέθοδος ( F5 >, Ειδική... >, Κενά ) βρίσκει και επιλέγει όλα τα κενά κελιά στην περιοχή:

    Αν τώρα κάνετε δεξί κλικ στα επιλεγμένα κελιά και επιλέξετε Διαγραφή >, Ολόκληρη η στήλη , όλες οι στήλες που περιέχουν τουλάχιστον ένα κενό κελί Αν κατά λάθος το κάνατε αυτό, πατήστε Ctrl + Z για να τα πάρετε όλα πίσω.

    Τώρα που γνωρίζετε έναν λάθος τρόπο για να διαγράψετε κενές στήλες στο Excel, ας δούμε πώς να το κάνετε σωστά.

    Πώς να αφαιρέσετε κενές στήλες στο Excel με VBA

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

    Η παρακάτω μακροεντολή VBA αφαιρεί όλες τις κενές στήλες στην επιλεγμένη περιοχή. Και το κάνει αυτό με ασφάλεια - μόνο οι απολύτως κενές στήλες διαγράφονται. Εάν μια στήλη περιέχει μια τιμή ενός μόνο κελιού, ακόμη και μια κενή συμβολοσειρά που επιστρέφεται από κάποιον τύπο, μια τέτοια στήλη θα παραμείνει ανέπαφη.

    Μακροεντολή Excel: αφαίρεση κενών στηλών από φύλλο Excel Public Sub DeleteEmptyColumns() Dim SourceRange As Range Dim EntireColumn As Range On Error Resume Next Set SourceRange = Application.InputBox( _ "Select a range:" , "Delete Empty Columns" , _ Application.Selection.Address, Type :=8) If Not (SourceRange Is Nothing ) Then Application.ScreenUpdating = False For i = SourceRange.Columns.Count To 1Βήμα -1 Set EntireColumn = SourceRange.Cells(1, i).EntireColumn If Application.WorksheetFunction.CountA(EntireColumn) = 0 Then EntireColumn.Delete End If Next Application.ScreenUpdating = True End If End If End Sub

    Πώς να χρησιμοποιήσετε τη μακροεντολή Διαγραφή κενών στηλών

    Ακολουθούν τα βήματα για να προσθέσετε τη μακροεντολή στο Excel σας:

    1. Πατήστε Alt + F11 για να ανοίξετε τον επεξεργαστή της Visual Basic.
    2. Στη γραμμή μενού, κάντε κλικ στο Εισαγωγή >, Ενότητα .
    3. Επικολλήστε τον παραπάνω κώδικα στο παράθυρο Code.
    4. Πατήστε F5 για να εκτελέσετε τη μακροεντολή.
    5. Όταν εμφανιστεί το αναδυόμενο παράθυρο διαλόγου, μεταβείτε στο φύλλο εργασίας που σας ενδιαφέρει, επιλέξτε την επιθυμητή περιοχή και κάντε κλικ στο κουμπί OK:

    Αν δεν θέλετε να προσθέσετε μια μακροεντολή στο φύλλο εργασίας σας, μπορείτε να την εκτελέσετε από το βιβλίο εργασίας του δείγματός μας. Ακούστε πώς:

    1. Κατεβάστε το δείγμα του βιβλίου εργασίας μας για την Αφαίρεση κενών στηλών στο Excel, ανοίξτε το και ενεργοποιήστε το περιεχόμενο αν σας ζητηθεί.
    2. Ανοίξτε το δικό σας βιβλίο εργασίας ή μεταβείτε στο ήδη ανοιχτό.
    3. Στο βιβλίο εργασίας σας, πατήστε Alt + F8 , επιλέξτε το DeleteEmptyColumns μακροεντολή, και κάντε κλικ στο Εκτέλεση .
    4. Στο αναδυόμενο παράθυρο διαλόγου, επιλέξτε την περιοχή και κάντε κλικ στο OK .

    Με οποιονδήποτε τρόπο, όλες οι κενές στήλες στην επιλεγμένη περιοχή θα καταργηθούν:

    Προσδιορισμός και διαγραφή κενών στηλών στο Excel με έναν τύπο

    Η παραπάνω μακροεντολή αφαιρεί τις κενές στήλες γρήγορα και αθόρυβα. Αλλά αν είστε τύπος ανθρώπου που "κρατάει τα πάντα υπό έλεγχο" (όπως εγώ :) μπορεί να θέλετε να βλέπετε οπτικά τις στήλες που πρόκειται να αφαιρεθούν. Σε αυτό το παράδειγμα, θα εντοπίσουμε πρώτα τις κενές στήλες χρησιμοποιώντας έναν τύπο, ώστε να μπορείτε να τις εξετάσετε γρήγορα και στη συνέχεια να εξαλείψετε όλες ή μερικές από αυτές τις στήλες.

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

    Με ένα αντίγραφο ασφαλείας σε ασφαλές μέρος, εκτελέστε τα ακόλουθα βήματα:

    Βήμα 1. Εισαγωγή νέας γραμμής

    Προσθέστε μια νέα γραμμή στην κορυφή του πίνακα σας. Για το σκοπό αυτό, κάντε δεξί κλικ στην επικεφαλίδα της πρώτης γραμμής και επιλέξτε Εισαγωγή Μην ανησυχείτε για την αλλοίωση της δομής/διάταξης των δεδομένων σας - μπορείτε να διαγράψετε αυτή τη γραμμή αργότερα.

    Βήμα 2. Εντοπισμός κενών στηλών

    Στο αριστερότερο κελί της προστιθέμενης γραμμής, εισαγάγετε τον ακόλουθο τύπο:

    =COUNTA(A2:A1048576)=0

    Και στη συνέχεια, αντιγράψτε τον τύπο στις άλλες στήλες σύροντας τη λαβή γεμίσματος.

    Η λογική του τύπου είναι πολύ απλή: Η COUNTA ελέγχει τον αριθμό των κενών κελιών στη στήλη, από τη γραμμή 2 έως τη γραμμή 1048576, η οποία είναι το μέγιστο όριο γραμμής στο Excel 2019 - 2007. Συγκρίνετε αυτόν τον αριθμό με το μηδέν και, ως αποτέλεσμα, έχετε TRUE στις κενές στήλες και FALSE στις στήλες που περιέχουν τουλάχιστον ένα μη κενό κελί. Λόγω της χρήσης σχετικών αναφορών κελιών, ο τύπος προσαρμόζεται σωστά για κάθε στήληόπου αντιγράφεται.

    Σε περίπτωση που ρυθμίζετε το φύλλο εργασίας για κάποιον άλλο, ίσως θελήσετε να επισημάνετε τις στήλες με έναν πιο ουσιαστικό τρόπο. Κανένα πρόβλημα, αυτό μπορεί να γίνει εύκολα με μια δήλωση IF παρόμοια με αυτή:

    =IF(COUNTA(A2:A1048576)=0, "Blank", "Not blank")

    Τώρα ο τύπος υποδεικνύει ρητά ποιες στήλες είναι κενές και ποιες όχι:

    Συμβουλή. Σε σύγκριση με μια μακροεντολή, αυτή η μέθοδος σας δίνει μεγαλύτερη ευελιξία όσον αφορά το ποιες στήλες θα πρέπει να θεωρηθούν κενές. Σε αυτό το παράδειγμα, ελέγχουμε ολόκληρο τον πίνακα, συμπεριλαμβανομένης της γραμμής κεφαλίδας. Αυτό σημαίνει ότι αν μια στήλη περιέχει μόνο μια κεφαλίδα, η στήλη αυτή δεν θεωρείται κενή και δεν διαγράφεται. Αν θέλετε να ελέγξετε μόνο τις γραμμές δεδομένων αγνοώντας τις επικεφαλίδες των στηλών , αφαιρέστε τη σειρά ή τις σειρές επικεφαλίδων από το εύρος στόχου (A3:A1048576). Ως αποτέλεσμα, μια στήλη που έχει επικεφαλίδα και δεν περιέχει άλλα δεδομένα θα θεωρηθεί κενή και θα διαγραφεί. Επίσης, μπορείτε να περιορίσετε το εύρος στην τελευταία χρησιμοποιούμενη γραμμή, η οποία στην περίπτωσή μας θα ήταν η A11.

    Βήμα 3. Αφαίρεση κενών στηλών

    Έχοντας έναν λογικό αριθμό στηλών, μπορείτε απλά να επιλέξετε εκείνες που έχουν "Blank" στην πρώτη γραμμή (για να επιλέξετε πολλαπλές στήλες, κρατήστε πατημένο το πλήκτρο Ctrl καθώς κάνετε κλικ στα γράμματα της στήλης). Στη συνέχεια, κάντε δεξί κλικ σε οποιαδήποτε επιλεγμένη στήλη και επιλέξτε Διαγραφή από το μενού περιβάλλοντος:

    Εάν υπάρχουν δεκάδες ή εκατοντάδες στήλες στο φύλλο εργασίας σας, είναι λογικό να εμφανίσετε όλες τις κενές στήλες. Για το σκοπό αυτό, κάντε τα εξής:

    1. Επιλέξτε την επάνω σειρά με τους τύπους, μεταβείτε στην επιλογή Δεδομένα tab>, Ταξινόμηση και φίλτρο και κάντε κλικ στο κουμπί Ταξινόμηση κουμπί.
    2. Στο παράθυρο διαλόγου προειδοποίησης που εμφανίζεται, επιλέξτε Επεκτείνετε την επιλογή , και κάντε κλικ στο Ταξινόμηση...

    3. Αυτό θα ανοίξει το Ταξινόμηση παράθυρο διαλόγου, όπου κάνετε κλικ στο Επιλογές... κουμπί, επιλέξτε Ταξινόμηση από αριστερά προς τα δεξιά, και κάντε κλικ στο OK .

    4. Διαμορφώστε μόνο ένα επίπεδο ταξινόμησης όπως φαίνεται παρακάτω και κάντε κλικ στο OK:
      • Ταξινόμηση κατά: Σειρά 1
      • Ταξινόμηση σε: Τιμές κελιών
      • Παραγγελία: από το Α έως το Ω

      Ως αποτέλεσμα, οι κενές στήλες θα μετακινηθούν στο αριστερό μέρος του φύλλου εργασίας σας:

    5. Επιλέξτε όλες τις κενές στήλες - κάντε κλικ στο γράμμα της πρώτης στήλης, πατήστε Shift και, στη συνέχεια, κάντε κλικ στο γράμμα της τελευταίας κενής στήλης.
    6. Κάντε δεξί κλικ στις επιλεγμένες στήλες και επιλέξτε Διαγραφή από το αναδυόμενο μενού.

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

    Ο γρηγορότερος τρόπος για την αφαίρεση κενών στηλών στο Excel

    Στην αρχή αυτού του σεμιναρίου, έγραψα ότι δεν υπάρχει τρόπος διαγραφής κενών στηλών στο Excel με ένα κλικ. Στην πραγματικότητα, αυτό δεν είναι ακριβώς αλήθεια. Θα έπρεπε να πω ότι δεν υπάρχει ενσωματωμένος τρόπος. Οι χρήστες της Ultimate Suite μας μπορούν να αφαιρέσουν τα κενά στο Excel κυριολεκτικά με μερικά κλικ :)

    Στο φύλλο εργασίας-στόχο, μεταβείτε στο Εργαλεία Ablebits κάντε κλικ στην καρτέλα Διαγραφή κενών και επιλέξτε Κενές στήλες :

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

    Κάντε κλικ στο OK , και σε μια στιγμή όλες οι κενές στήλες εξαφανίζονται!

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

    Διαγραφή κενών είναι μόνο ένα από τα δεκάδες υπέροχα χαρακτηριστικά που μπορούν να κάνουν τη ζωή σας ως χρήστης του Excel ευκολότερη. Για να μάθετε περισσότερα, μπορείτε να κατεβάσετε μια δοκιμαστική έκδοση της Ultimate Suite for Excel.

    Οι κενές στήλες δεν διαγράφονται! Γιατί;

    Τεύχος : Έχετε δοκιμάσει όλες τις παραπάνω μεθόδους, αλλά μία ή περισσότερες κενές στήλες έχουν κολλήσει στο φύλλο εργασίας σας. Γιατί;

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

    Για να εντοπίσετε τον ένοχο, επιλέξτε το πρώτο κελί της προβληματικής στήλης και πατήστε Ctrl + κάτω βέλος . Για παράδειγμα, η στήλη C στο παρακάτω στιγμιότυπο δεν είναι κενή λόγω ενός μόνο χαρακτήρα κενού στο C6:

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

    Σας ευχαριστώ για την ανάγνωση και ελπίζω να σας δω στο blog μας την επόμενη εβδομάδα!

    Ο Michael Brown είναι ένας αφοσιωμένος λάτρης της τεχνολογίας με πάθος για την απλοποίηση πολύπλοκων διαδικασιών χρησιμοποιώντας εργαλεία λογισμικού. Με περισσότερο από μια δεκαετία εμπειρίας στον κλάδο της τεχνολογίας, έχει βελτιώσει τις δεξιότητές του στο Microsoft Excel και το Outlook, καθώς και στα Φύλλα Google και στα Έγγραφα. Το blog του Michael είναι αφιερωμένο στο να μοιράζεται τη γνώση και την τεχνογνωσία του με άλλους, παρέχοντας εύκολες συμβουλές και σεμινάρια για τη βελτίωση της παραγωγικότητας και της αποτελεσματικότητας. Είτε είστε έμπειρος επαγγελματίας είτε αρχάριος, το ιστολόγιο του Michael προσφέρει πολύτιμες πληροφορίες και πρακτικές συμβουλές για να αξιοποιήσετε στο έπακρο αυτά τα βασικά εργαλεία λογισμικού.