Απόκρυψη στηλών VBA του Excel
Η απόκρυψη είναι ένα απλό πράγμα, αλλά πρέπει να καταλάβετε την έννοια εδώ. Για να αποκρύψετε τη στήλη χρησιμοποιώντας το VBA, πρέπει να προσδιορίσουμε ποια στήλη πρέπει να κρύψουμε. Για να καθορίσουμε τη στήλη που θα κρυφτεί, πρέπει να χρησιμοποιήσουμε το αντικείμενο RANGE.
Εύρος ("A: A")
Τότε πρέπει να χρησιμοποιήσουμε την ιδιότητα "Ολόκληρη τη στήλη".
Εύρος ("A: A"). Ολόκληρη η στήλη
Σε ολόκληρη την ιδιότητα στήλης, πρέπει να χρησιμοποιήσουμε την ιδιότητα "Κρυφό".
Εύρος ("A: A"). Ολόκληρη η στήλη. Κρυφό
Στη συνέχεια, επιτέλους, πρέπει να ρυθμίσουμε την κρυφή ιδιότητα σε ΑΛΗΘΕΙΑ.
Εύρος ("A: A"). Ολόκληρη η στήλη.Hidden = TRUE
Αυτό θα κρύψει τη στήλη A.
Πώς να αποκρύψετε στήλες στο VBA;
Μπορούμε να κρύψουμε στήλες με διάφορους τρόπους. Μπορούμε να αποκρύψουμε μια στήλη χρησιμοποιώντας ένα αντικείμενο Range χρησιμοποιώντας την ιδιότητα CELLS. Με βάση τη μέθοδο που χρησιμοποιούμε, πρέπει να κατασκευάσουμε τον κώδικα VBA.
Παράδειγμα # 1 - Απόκρυψη με χρήση αντικειμένου εύρους
Εάν θέλετε να αποκρύψετε μια συγκεκριμένη στήλη, τότε καθορίστε τη στήλη μέσα στο αντικείμενο RANGE. Κοιτάξτε τα παρακάτω δεδομένα.

Τώρα θα κρύψουμε ολόκληρη τη στήλη Α χρησιμοποιώντας τον ακόλουθο κώδικα.
Κώδικας:
Sub Range_Hide () Range ("A: A"). EntireColumn.Hidden = True End Sub

Έτσι, όταν εκτελούμε τον κώδικα, θα έχουμε το ακόλουθο αποτέλεσμα.

Παράδειγμα # 2 - Απόκρυψη χρησιμοποιώντας την ιδιότητα στηλών
Εάν θέλετε να αποκρύψετε τη στήλη χρησιμοποιώντας την ιδιότητα Στήλες, τότε ο παρακάτω κώδικας είναι για εσάς.
Κώδικας:
Sub Range_Hide () Στήλες ("B"). Hidden = True End Sub

Αυτό θα κρύψει τη στήλη B. Εδώ πρέπει να σκεφτείτε πού βρίσκεται η ιδιότητα ολόκληρης της στήλης. Όταν χρησιμοποιείτε την ιδιότητα Στήλες, δεν είναι απαραίτητο να χρησιμοποιήσετε την ιδιότητα Ολόκληρη η Στήλη.
Μπορούμε ακόμα να χρησιμοποιήσουμε την ιδιότητα Ολόκληρη τη στήλη, αλλά όχι απαραίτητα Και ο κώδικας για το ίδιο δίνεται παρακάτω.
Κώδικας:
Υπο στήλες_ Απόκρυψη () Στήλες ("B"). Ολόκληρη η στήλη.Hidden = Sub End True

Αυτό πρέπει επίσης να λειτουργεί καλά.
Μπορούμε επίσης να χρησιμοποιήσουμε τον αριθμό της στήλης αντί για αλφαβητική αναφορά. Και ο κώδικας για το ίδιο δίνεται παρακάτω.
Κώδικας:
Υπο στήλες_Απόκρυψη () Στήλες (4) .EntireColumn.Hidden = Sub End True

Αυτό θα κρύψει τη στήλη D.

Παράδειγμα # 3 - Απόκρυψη πολλαπλών στηλών
Μπορούμε επίσης να κρύψουμε πολλές στήλες ταυτόχρονα. Πρέπει να αναφέρουμε την πρώτη και την τελευταία στήλη, ώστε μεταξύ των στηλών να είναι επίσης κρυμμένες. Για τα ίδια δεδομένα με το παράδειγμα # 1, χρησιμοποιήστε τον ακόλουθο κώδικα για να αποκρύψετε πολλές στήλες.
Κώδικας:
Sub Columns_Hide () Range ("A: C"). EntireColumn.Hidden = True End Sub

Αυτό θα κρύψει τη στήλη Α έως Γ.
Μπορούμε επίσης να χρησιμοποιήσουμε τον ακόλουθο κώδικα για να αποκρύψουμε πολλές στήλες στο Excel VBA.
Κώδικας:
Sub Multi_Columns_Hide () Στήλες ("A: C"). Ολόκληρη η στήλη.Hidden = Sub End True

Οι παραπάνω μέθοδοι αποκρύπτουν τις τρεις πρώτες στήλες, δηλαδή, A, B και C.

Παράδειγμα # 4 - Απόκρυψη στηλών με μονό κελί
Μπορούμε επίσης να αποκρύψουμε μια στήλη με βάση μία αναφορά κελιού. Δεν χρειάζεται να δώσουμε την πλήρη αναφορά στηλών για να κρύψουμε τη στήλη. Με μία μόνο αναφορά κελιού, θα πρέπει να είμαστε σε θέση να κρύψουμε μια στήλη.
Κώδικας:
Sub Single_Hide () Range ("A5"). EntireColumn.Hidden = True End Sub

Αυτό θα κρύψει ολόκληρη τη στήλη A.

Παράδειγμα # 5 - Απόκρυψη κάθε εναλλακτικής στήλης
Ας υποθέσουμε ότι έχετε δεδομένα, κάτι σαν την παρακάτω εικόνα.

We need to hide every alternative column, which is blank. We need to use loops; the below code will do the job for us.
Code:
Sub AlternativeColumn_Hide() Dim k As Integer For k = 1 To 7 Cells(1, k + 1).EntireColumn.Hidden = True k = k + 1 Next k End Sub

This will hide every alternate column.

Example #6 - Hide Every Empty Column
In the previous example, every other alternative column was blank; we have hidden easily. But look at the below data.

Here empty columns pattern is not standard. In these cases, the below code will hide all the empty columns. It doesn’t matter what the pattern is.
Code:
Sub Column_Hide1() Dim k As Integer For k = 1 To 11 If Cells(1, k).Value = "" Then Columns(k).Hidden = True End If Next k End Sub

When you run the code, you will get the result as follows.

Example #7 - Hide Columns Based On Cell Value
Τώρα θα δούμε πώς να κρύβουμε στήλες με βάση την τιμή κελιού. Για παράδειγμα, δείτε τα παρακάτω δεδομένα.

Εδώ θέλω να κρύψω όλες τις στήλες εάν ο τίτλος είναι "Όχι" Ο παρακάτω κώδικας θα το κάνει για μένα.
Κώδικας:
Sub Column_Hide_Cell_Value () Dim k As Integer For k = 1 to 7 If Cells (1, k). Value = "No" then Columns (k). Hidden = True End if Next k End Sub

Όταν εκτελείτε τον κωδικό, θα έχετε το αποτέλεσμα ως εξής.
