Note: The other languages of the website are Google-translated. Back to English

Πώς να φιλτράρετε μια λίστα και να διαγράψετε τις υπόλοιπες κρυφές ή ορατές σειρές στο Excel;

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

Διαγράψτε κρυφές σειρές στο ενεργό φύλλο εργασίας με κωδικό VBA
Διαγράψτε ορατές σειρές φιλτραρισμένης λίστας επιλέγοντας όλα τα ορατά κελιά
Διαγράψτε εύκολα κρυφές ή ορατές σειρές φιλτραρισμένης λίστας με το Kutools για Excel


Διαγράψτε κρυφές σειρές στο ενεργό φύλλο εργασίας με κωδικό VBA

Αυτή η ενότητα θα σας δείξει τον κώδικα VBA για να διαγράψετε κρυφές σειρές στο ενεργό φύλλο. Κάντε τα εξής:

1. Ενεργοποιήστε το φύλλο εργασίας που χρειάζεστε για να διαγράψετε κρυφές σειρές, πατήστε άλλος + F11 ταυτόχρονα για να ανοίξετε το Microsoft Visual Basic για εφαρμογές παράθυρο.

2. Στο παράθυρο της Microsoft Visual Basic for Applications, κάντε κλικ στο Κύριο θέμα > Μονάδα μέτρησης. Και, στη συνέχεια, αντιγράψτε και επικολλήστε τον παρακάτω κώδικα VBA στο παράθυρο Module.

Κωδικός VBA: Διαγραφή κρυφών σειρών

Sub RemoveHiddenRows()
	Dim xRow As Range
	Dim xRg As Range
	Dim xRows As Range
	On Error Resume Next
	Set xRows = Intersect(ActiveSheet.Range("A:A").EntireRow, ActiveSheet.UsedRange)
	If xRows Is Nothing Then Exit Sub
		For Each xRow In xRows.Columns(1).Cells
			If xRow.EntireRow.Hidden Then
				If xRg Is Nothing Then
					Set xRg = xRow
				Else
					Set xRg = Union(xRg, xRow)
				End If
			End If
		Next
		If Not xRg Is Nothing Then
			MsgBox xRg.Count & " hidden rows have been deleted", , "Kutools for Excel"
			xRg.EntireRow.Delete
		Else
			MsgBox "No hidden rows found", , "Kutools for Excel"
		End If
	End Sub

3. Πάτα το F5 κλειδί για την εκτέλεση του κώδικα. Εάν υπάρχουν κρυφές σειρές στο ενεργό φύλλο, μετά την εκτέλεση του κώδικα, θα εμφανιστεί ένα παράθυρο διαλόγου για να σας πει πόσες κρυφές σειρές έχουν διαγραφεί. Κάντε κλικ στο OK κουμπί για να διαγράψετε τις κρυφές σειρές. Δείτε το στιγμιότυπο οθόνης:

doc διαγραφή υπόλοιπο 1

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

doc διαγραφή υπόλοιπο 1

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


Διαγράψτε τις ορατές σειρές της φιλτραρισμένης λίστας επιλέγοντας όλα τα χαρακτηριστικά ορατών κελιών

Για τη διαγραφή ορατών σειρών φιλτραρισμένης λίστας, κάντε τα εξής.

1. Επιλέξτε όλες τις φιλτραρισμένες σειρές και πατήστε F5 για να ανοίξετε το Μετάβαση σε πλαίσιο διαλόγου και, στη συνέχεια, κάντε κλικ στο Άμεση έκπτωση κουμπί. Δείτε το στιγμιότυπο οθόνης:

doc διαγραφή υπόλοιπο 1

2. Στο Πηγαίνετε στο ειδικό πλαίσιο ελέγχου, ελέγξτε το Μόνο ορατά κελιά και στη συνέχεια κάντε κλικ στο OK κουμπί.

doc διαγραφή υπόλοιπο 1

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

doc διαγραφή υπόλοιπο 1

Μέχρι τώρα, όλες οι ορατές σειρές έχουν διαγραφεί από τη φιλτραρισμένη λίστα.


Διαγράψτε εύκολα κρυφές ή ορατές σειρές φιλτραρισμένης λίστας με το Kutools για Excel

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

Πριν από την εφαρμογή Kutools για Excel, σας παρακαλούμε κατεβάστε και εγκαταστήστε το πρώτα.

1. Εάν θέλετε να διαγράψετε μόνο κρυφές ή ορατές σειρές μιας φιλτραρισμένης λίστας, επιλέξτε το φιλτραρισμένο εύρος με μη αυτόματο τρόπο και, στη συνέχεια, κάντε κλικ Kutools > Διαγραφή > Διαγραφή κρυφών (ορατών) γραμμών και στηλών. Δείτε το στιγμιότυπο οθόνης:

2. Στο Διαγραφή κρυφών (ορατών) γραμμών & στηλών πλαίσιο διαλόγου, κρατήστε το Σε επιλεγμένο εύρος που επιλέχθηκαν στο Κοιτάξτε μέσα αναπτυσσόμενη λίστα (μπορείτε να ορίσετε άλλες επιλογές όπως χρειάζεστε), ελέγξτε το Γραμμές επιλογή του Διαγραφή τύπου ενότητα, και στο Λεπτομερής τύπος , ελέγξτε Ορατές σειρές or Κρυφές σειρές επιλογή όπως χρειάζεστε. Και τέλος κάντε κλικ στο OK κουμπί.

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

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


Διαγράψτε κρυφές ή ορατές σειρές φιλτραρισμένης λίστας με το Kutools για Excel


Τα καλύτερα εργαλεία παραγωγικότητας του Office

Το Kutools για Excel λύνει τα περισσότερα από τα προβλήματά σας και αυξάνει την παραγωγικότητά σας κατά 80%

  • Επαναχρησιμοποίηση: Εισαγάγετε γρήγορα σύνθετοι τύποι, γραφήματα και οτιδήποτε έχετε χρησιμοποιήσει στο παρελθόν. Κρυπτογράφηση κυττάρων με κωδικό πρόσβασης Δημιουργία λίστας αλληλογραφίας και στείλτε email ...
  • Super Formula Bar (επεξεργαστείτε εύκολα πολλές γραμμές κειμένου και τύπου). Διάταξη ανάγνωσης (εύκολη ανάγνωση και επεξεργασία μεγάλου αριθμού κελιών). Επικόλληση σε φιλτραρισμένο εύρος...
  • Συγχώνευση κελιών / σειρών / στηλών χωρίς απώλεια δεδομένων · Περιεχόμενο διαχωρισμού κελιών Συνδυάστε διπλές σειρές / στήλες... Αποτροπή διπλών κυττάρων; Συγκρίνετε τα εύρη...
  • Επιλέξτε Διπλότυπο ή Μοναδικό Σειρές; Επιλέξτε Κενές σειρές (όλα τα κελιά είναι κενά). Σούπερ εύρεση και ασαφής εύρεση σε πολλά βιβλία εργασίας. Τυχαία επιλογή ...
  • Ακριβές αντίγραφο Πολλαπλά κελιά χωρίς αλλαγή της αναφοράς τύπου. Αυτόματη δημιουργία αναφορών σε πολλαπλά φύλλα? Εισαγωγή κουκκίδων, Πλαίσια ελέγχου και άλλα ...
  • Εξαγωγή κειμένου, Προσθήκη κειμένου, Κατάργηση κατά θέση, Αφαιρέστε το διάστημα; Δημιουργία και εκτύπωση υποσύνολων σελιδοποίησης. Μετατροπή περιεχομένου και σχολίων μεταξύ κελιών...
  • Σούπερ φίλτρο (αποθηκεύστε και εφαρμόστε σχήματα φίλτρων σε άλλα φύλλα). Προηγμένη ταξινόμηση ανά μήνα / εβδομάδα / ημέρα, συχνότητα και άλλα. Ειδικό φίλτρο με έντονη, πλάγια ...
  • Συνδυάστε βιβλία εργασίας και φύλλα εργασίας; Συγχώνευση πινάκων βάσει βασικών στηλών. Διαχωρίστε τα δεδομένα σε πολλά φύλλα; Μαζική μετατροπή xls, xlsx και PDF...
  • Περισσότερα από 300 ισχυρά χαρακτηριστικά. Υποστηρίζει Office / Excel 2007-2021 και 365. Υποστηρίζει όλες τις γλώσσες. Εύκολη ανάπτυξη στην επιχείρηση ή τον οργανισμό σας. Πλήρεις δυνατότητες δωρεάν δοκιμής 30 ημερών. Εγγύηση επιστροφής χρημάτων 60 ημερών.
kte καρτέλα 201905

Το Office Tab φέρνει τη διεπαφή με καρτέλες στο Office και κάνει την εργασία σας πολύ πιο εύκολη

  • Ενεργοποίηση επεξεργασίας και ανάγνωσης καρτελών σε Word, Excel, PowerPoint, Publisher, Access, Visio και Project.
  • Ανοίξτε και δημιουργήστε πολλά έγγραφα σε νέες καρτέλες του ίδιου παραθύρου και όχι σε νέα παράθυρα.
  • Αυξάνει την παραγωγικότητά σας κατά 50% και μειώνει εκατοντάδες κλικ του ποντικιού για εσάς κάθε μέρα!
κάτω μέρος γραφείου
Σχόλια (7)
Δεν υπάρχουν ακόμη βαθμολογίες. Γίνε ο πρώτος που θα αξιολογήσετε!
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Σχόλια re: η μακροεντολή για κρυφές διαγραφές σειρών - διαρκεί πολύ για να εκτελεστεί σε 900 σειρές για να είναι χρήσιμο. 2+ ώρες σε ένα OC'd Threadripper 1950X και ακόμα σε λειτουργία (έπρεπε να τερματιστεί η εργασία). Υπάρχει κάποιος τρόπος να το βελτιστοποιήσετε ώστε να χρησιμοποιεί πολλαπλούς πυρήνες ή είναι περιορισμός VBA;
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Γεια σας,
Ο κώδικας έχει βελτιστοποιηθεί. Δοκιμάστε. Σας ευχαριστούμε για το σχόλιό σας.

Sub RemoveHiddenRows()
Dim xFlag ως Boolean
Dim xStr, xTemp As String
Dim xDiv, xMod As Long
Dim I, xCount, xRows As Long
Dim xRg, xCell, xDRg ως εύρος
Dim xArr() Ως συμβολοσειρά
On Error Συνέχιση Επόμενη
Application.ScreenUpdating = False
Application.EnableEvents = False
Ορισμός xRg = Intersect(ActiveSheet.Range("A:A").EntireRow, ActiveSheet.UsedRange)
Εάν το xRg δεν είναι τίποτα, τότε βγείτε από το Sub
xRows = xRg.Rows.Count
Ορισμός xRg = xRg(1)
xFlag = Αληθινό
xTemp = ""
xCount = 0
Για I = 1 έως xRows
Ορισμός xCell = xRg.Offset(I - 1, 0)
Do while xFlag
Αν xCell.EntireRow.Hidden Τότε
xStr = xCell.Διεύθυνση
xFlag = Λάθος
Αλλού
GoTo Ctn
End If
Βρόχος
Αν xCell.EntireRow.Hidden Τότε
xTemp = xStr & "," & xCell.Address
End If
Αν Len(xTemp) > 171 Τότε
xCount = xCount + 1
ReDim Preserve xArr (1 έως xCount)
xArr(xCount) = xStr
xStr = xCell.Διεύθυνση
Αλλού
xStr = xTemp
End If
Ctn:
Επόμενο
xCount = xCount + 1
ReDim Preserve xArr (1 έως xCount)
xArr(xCount) = xStr
Για I = xCount To 1 Step -1
Αν I = 1 Τότε
xStr = Mid(xArr(I), InStr(xArr(I), ",") + 1, Len(xArr(I)) - InStr(xArr(I), ","))
Αλλού
xStr = xArr(I)
End If
Αν το xDRg δεν είναι τίποτα τότε
Ορισμός xDRg = Εύρος (xStr)
Αλλού
Ορισμός xDRg = Ένωση (xDRg, εύρος (xStr))
End If
Αν (Len(xDRg.Address) >= 244) Ή (xCount = 1) Τότε
xDRg.EntireRow.Delete
Ορισμός xDRg = Τίποτα
End If
Επόμενο
Application.EnableEvents = True
Application.ScreenUpdating = True
Sub End
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Τέλεια, σ 'ευχαριστώ! Θα το ελέγξω στην επόμενη ευκαιρία / ανάγκη μου για αυτό και θα απαντήσω.
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Ο κώδικας VBA για τη διαγραφή κρυφών σειρών λειτούργησε τέλεια χωρίς ταλαιπωρία. ΣΑΣ ΕΥΧΑΡΙΣΤΩ!!
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Ευχαριστώ για τις πληροφορίες. Αυτό ήταν διδακτικό. Υπάρχει τρόπος φιλτραρίσματος και διαγραφής για συγκεκριμένους αριθμούς σε σειρές έως 1 εκατομμύριο; Μπορεί ο παραπάνω κώδικας να τροποποιηθεί για να γίνει αυτό;
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Γεια σας,
Λυπούμαστε, δεν δοκίμασα τον κώδικα σε τέτοια τεράστια δεδομένα σειρών. Ίσως μπορείτε να δημιουργήσετε ένα αντίγραφο των δεδομένων σας και να ελέγξετε εάν ο κώδικας μπορεί να λειτουργήσει.
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Γεια σας, αυτός ο κώδικας VBA είναι εξαιρετικά χρήσιμος.
Δεν υπάρχουν σχόλια δημοσιεύτηκε ακόμα

Ακολουθησε μας

Πνευματικά δικαιώματα © 2009 - www.extendoffice.com. | Ολα τα δικαιώματα διατηρούνται. Τροφοδοτείται από ExtendOffice. | Sitemap
Το Microsoft και το λογότυπο του Office είναι εμπορικά σήματα ή σήματα κατατεθέντα της Microsoft Corporation στις Ηνωμένες Πολιτείες ή / και σε άλλες χώρες.
Προστατεύεται από το Sectigo SSL