Hogyan lehet törölni az összes rejtett sort és oszlopot az Excelben

Sok Excel felhasználó elrejti a sorokat és oszlopokat, ha olyan adatokkal rendelkezik, amelyekre nincs szükségük.

Ez egy módja annak, hogy csak a hasznos adatokat lássa láthatóvá, és ugyanakkor ne kelljen törölnie azokat az adatokat, amelyeknek nem kell láthatónak lenniük.

És ha sok ilyen rejtett sor/oszlop van, fájdalmas lehet megtalálni és törölni ezeket a rejtett sorokat és oszlopokat (abban az esetben, ha nincs rájuk szükség).

Ebben az oktatóanyagban néhány egyszerű módszert mutatok be törölje a rejtett sorokat és oszlopokat az Excelben.

Van egy beépített módszer, amely lehetővé teszi, hogy egyszerre törölje az összes rejtett sort és oszlopot, valamint használhat VBA makrókódokat is arra az esetre, ha ezt a kiválasztott cellatartományra szeretné alkalmazni.

Kezdjük hát el!

Törölje az összes rejtett sort és oszlopot az Excelben

Ha törölni szeretné az Excelben a teljes munkafüzet összes rejtett sorát és oszlopát, akkor használja az itt látható módszert.

Ne feledje, hogy ezeket a rejtett sorokat és oszlopokat eltávolítja a teljes munkafüzetből, és nem csak az aktív lapról.

Az alábbi lépésekkel törölheti az összes rejtett sort és oszlopot az Excel munkafüzetéből:

  1. Kattintson a Fájl opcióra
  2. A bal oldali lehetőségek közül kattintson az „Információ” gombra
  3. Kattintson a "Problémák keresése" lehetőségre
  4. Kattintson a „Dokumentum ellenőrzése” lehetőségre. Ezzel megnyílik a Dokumentumfelügyelő párbeszédpanel
  5. A „Dokumentumellenőr” párbeszédpanelen kattintson az „Ellenőrzés” gombra. Ez megvizsgálja a teljes munkafüzetet, és információt ad a munkafüzetről
  6. Görgessen le a „Rejtett sorok és oszlopok” opcióhoz. Látni fogja, hogy megjeleníti a munkafüzetben talált rejtett sorok és oszlopok teljes számát.
  7. Kattintson az „Összes eltávolítása” gombra

A fenti lépések törlik a munkafüzet összes rejtett sorát és oszlopát.

Ne feledje, hogy el kell mentenie ezt a munkafüzetet a Dokumentumellenőrző opció futtatása előtt. Abban az esetben, ha a munkafüzet még nincs elmentve, az Excel először kényszeríti a mentésére. Ezenkívül figyelmeztető üzenetet jelenít meg, amelyben a fájl egyszeri mentését kéri, mivel az ezekkel a lépésekkel megváltoztatott adatok nem állíthatók vissza.

Ha nincsenek rejtett sorok és oszlopok, akkor a Rejtett és sorok és oszlopok opció előtt (a Dokumentumellenőrző párbeszédpanelen) zöld pipa jelenik meg.

A rejtett sorokon és oszlopokon kívül a Dokumentumfelügyelő párbeszédpanel sok más hasznos információt is tartalmaz - például a megjegyzések számát, a rejtett munkalapokat vagy a beágyazott dokumentumokat stb.

Megjegyzés: A dokumentumfelügyelő által végrehajtott módosításokat nem vonhatja vissza. Ezért győződjön meg róla, hogy rendelkezik biztonsági másolatával az eredeti adatokról (arra az esetre, ha szüksége lehet rájuk a jövőben)

Ez egy nagyszerű módszer, ha törölni szeretné a teljes munkafüzet összes rejtett oszlopát és sorát.

De ha csak egy adott lapon vagy egy adott tartományban szeretné törölni, akkor nem használhatja ezt az opciót.

Ebben az esetben használhatja a következő VBA módszert.

Törölje a rejtett sorokat és oszlopokat a VBA segítségével

Ha csak néhány rejtett sora és oszlopa van, akkor manuálisan feloldhatja, majd törölheti.

De ha ezt gyakran meg kell tennie, vagy ha nagy adathalmaza van, sok sor/oszlop rejtve, akkor a legjobb, ha VBA makrókódokat használ a folyamat automatizálásához.

Nézzünk meg különböző forgatókönyveket, ahol a VBA segítségével törölheti ezeket a rejtett sorokat és oszlopokat.

Egy teljes munkalapról (használt tartomány)

Bár a VBA kódot ellenőrizni tudom a teljes munkalapon, a munkalap utolsó sorszámától és utolsó oszlopszámától kezdve, ez erőforrások pazarlása lenne.

Jobb módszer az lenne, ha megnézné, hogy mi a használt tartomány, majd csak ellenőrizze a használt tartományt a rejtett sorok és oszlopok esetében.

Az alábbiakban látható a VBA kód, amely törli a használt tartomány összes rejtett sorát:

Sub DeleteHiddenRows () Dim sht Munkalapként Dim LastRow Set sht = ActiveSheet LastRow = sht.UsedRange.Rows (sht.UsedRange.Rows.Count) .Row For i = LastRow To 1 Step -1 If Sorok (i) .Hidden = True Ezután Sorok (i) .EntireRow.Delete Next End Sub

A fenti VBA -kód először megtudja a használt tartomány utolsó sorszámát, és hozzárendeli ezt a sorszámot a „LastRow” változóhoz.

Ezt az utolsó sorszámot egy For Next ciklusban használják, ahol az utolsó sorból indul, és ellenőrzi, hogy rejtve van -e.

Ha el van rejtve, akkor az egész sor törlődik. És ha nincs elrejtve, a kód elhagyja ezt a sort, és továbblép a felette lévő sorba. Ez a ciklus ellenőrzi az összes sort, és töröl minden rejtett sort, amellyel a folyamat során találkozik.

Ha törölni szeretné a használt tartomány összes rejtett oszlopát, használja az alábbi VBA kódot:

Sub DeleteHiddenColumns () Dim sht Munkalapként Dim LastCol as Integer Set sht = ActiveSheet LastCol = sht.UsedRange.Columns (sht.UsedRange.Columns.Count) .Column For i = LastCol To 1 Step -1 If Oszlopok (i) .Hidden = Igaz, akkor oszlopok (i) .EntireColumn.Delete Next End Sub

Ez ismét ugyanígy működik, ahol sorok helyett oszlopokat keresünk.

Tehát megtudja a használt tartomány utolsó oszlopszámát, hozzárendeli egy változóhoz, majd a ciklus segítségével az utolsó oszlopból az első oszlopba lép, és törli a folyamat összes rejtett oszlopát.

Ha pedig olyan kódot szeretne, amely törli az összes rejtett sort, valamint a rejtett oszlopokat, használja az alábbi VBA -kódot:

Sub DeleteHiddenRowsColumns () Dim sht mint munkalap Dim LastRow mint Integer Dim LastCol mint Integer Set sht = ActiveSheet LastRow = sht.UsedRange.Rows (sht.UsedRange.Rows.Count) .Row LastCol = sht.UsedRange.Columns (sht.UsedRange. Oszlopok. Szám). Oszlop i = Utolsó sor az 1. lépéshez -1 Ha sorok (i). Rejtett = Igaz, akkor sorok (i) .EntireRow.Delete Next For i = LastCol Az 1. lépéshez -1 Ha oszlopok (i). = Igaz, akkor oszlopok (i) .EntireColumn.Delete Next End Sub

Ez csak a kombinált kód mind a sorokhoz, mind az oszlopokhoz, és ugyanúgy működik.

Egy hurok helyett ez két külön hurkot használ, ahol először az összes soron megy keresztül, majd az összes oszlopon. És közben törli az összes rejtett sort és oszlopot, amellyel találkozik.

Ne feledje, hogy ezt a VBA -kódot a Visual Basic Editor rendszeres moduljában kell elhelyezni. Ezután futtathatja a kódot közvetlenül a VB szerkesztőből, a makró párbeszédpanel használatával, vagy hozzáadhatja ezt a makrót a gyorselérési eszköztárhoz.

Ha ezt gyakran meg kell tennie, akkor hozzáadhatja ezt a kódot a személyes makró munkafüzethez is, hogy a rendszer összes munkafüzetéből hozzáférhessen hozzá.

A sejtek meghatározott tartományából

Ha van egy meghatározott tartománya, ahonnan el szeretné távolítani a rejtett sorokat és oszlopokat, akkor ezt meg kell adnia a kódon belül.

Ez biztosítja, hogy a kód csak a megadott tartományban lévő körökön és oszlopokon karikázik, és a munkalap többi területét érintetlenül hagyja

A VBA kód alatt, amely ezt tenné:

Rész Törlés Rows.Count) .Row ColCount = Rng.Columns.Count LastCol = Rng.Columns (Rng.Columns.Count) .Column for i = LastRow To LastRow - RowCount -1 lépés Ha sorok (i) .Hidden = True then Rows ( i) .EntireRow.Delete Next For j = LastCol to LastCol - ColCount -1 lépés Ha oszlopok (j). Rejtett = Igaz, akkor oszlopok (j) .EntireColumn.Delete Next End Sub

A fenti kódban a tartományt A1: K200 -nak adtam meg.

Így a kód végigmegy a megadott tartomány összes során és oszlopán, és eltávolítja a rejtett sorokat és oszlopokat.

Ha ezen a tartományon kívül rejtett sorai vagy oszlopai vannak, azok nem változnak.

Tehát így törölheti rejtett sorok és oszlopok az Excelben.

Ha a teljes munkafüzetben szeretné végrehajtani, akkor használhatja a Dokumentumellenőrző lehetőséget. És ha nagyobb ellenőrzésre van szüksége, használhatja a VBA kódokat a fentiek szerint.

Remélem, hasznosnak találta ezt az oktatóanyagot!

wave wave wave wave wave