Så här tar du bort alla dolda rader och kolumner i Excel

Många Excel -användare döljer rader och kolumner när de har data som de inte behöver synas.

Det är ett sätt att bara hålla användbar data synlig och samtidigt inte behöva ta bort data som du inte behöver vara synlig.

Och om du har många sådana dolda rader/kolumner kan det vara jobbigt att hitta och ta bort dessa dolda rader och kolumner (om du inte behöver dem).

I denna handledning visar jag dig ett par sätt att enkelt ta bort dolda rader och kolumner i Excel.

Det finns en inbyggd metod som låter dig ta bort alla dolda rader och kolumner på en gång, och du kan också använda VBA -makrokoder om du vill tillämpa detta på vårt valda cellområde.

Så låt oss komma igång!

Ta bort alla dolda rader och kolumner i Excel

Om du vill ta bort alla dolda rader och kolumner i en hel arbetsbok i Excel kan du använda metoden som visas här.

Kom ihåg att det kommer att ta bort dessa dolda rader och kolumner från hela arbetsboken och inte bara från det aktiva arket.

Nedan följer stegen för att radera alla dolda rader och kolumner från arbetsboken i Excel:

  1. Klicka på alternativet Arkiv
  2. Klicka på "Info" i alternativen till vänster
  3. Klicka på alternativet "Sök efter problem"
  4. Klicka på alternativet "Inspektera dokument". Detta öppnar dialogrutan Dokumentinspektör
  5. Klicka på "Inspektera" -knappen i dialogrutan "Dokumentinspektör". Detta kommer att inspektera hela arbetsboken och ge dig information om arbetsboken
  6. Rulla ner till alternativet "Dolda rader och kolumner". Du kommer att se att det visar det totala antalet dolda rader och kolumner som det har hittat i arbetsboken.
  7. Klicka på knappen "Ta bort alla"

Stegen ovan tar bort alla dolda rader och kolumner i arbetsboken.

Observera att du måste spara den här arbetsboken innan du kör alternativet Document Inspector. Om arbetsboken inte redan har sparats skulle Excel först tvinga dig att spara den. Det kommer också att visa dig en varningsmeddelande som ber dig spara filen en gång, eftersom data som ändrats genom dessa steg inte kan återställas.

Om det inte finns några dolda rader och kolumner ser du en grön bock före alternativet Dolda och rader och kolumner (i dialogrutan Dokumentinspektör).

Förutom dolda rader och kolumner ger dialogrutan Dokumentinspektör dig också mycket annan användbar information - till exempel antalet kommentarer, dolda kalkylblad eller inbäddade dokument etc.

Obs! Du kan inte ångra ändringarna som gjorts av dokumentinspektören. Så se till att du har en säkerhetskopia av originaldata (om du kan behöva dem i framtiden)

Detta är en bra metod om du vill ta bort alla dolda kolumner och rader för hela arbetsboken.

Men om du bara vill ta bort det i ett visst blad eller i ett specifikt område kan du inte använda det här alternativet.

I så fall kan du använda den VBA -metod som behandlas härnäst.

Ta bort dolda rader och kolumner med VBA

Om du bara har några dolda rader och kolumner är det möjligt att ta bort dessa manuellt och sedan ta bort det.

Men om detta är något du behöver göra ganska ofta, eller om du har en stor datamängd med ett stort antal rader/kolumner som är dolda, är det bäst att använda VBA -makrokoder för att automatisera denna process.

Låt oss titta på olika scenarier där du kan använda VBA för att radera dessa dolda rader och kolumner.

Från ett helt arbetsblad (begagnat intervall)

Även om jag kan få VBA -koden att kontrollera hela kalkylbladet från det sista radnumret och det sista kolumnnumret i kalkylbladet, skulle det vara ett slöseri med resurser.

En bättre metod skulle vara att se vad som används intervallet och sedan bara kontrollera det använda intervallet för dolda rader och kolumner.

Nedan visas VBA -koden som tar bort alla dolda rader i det använda intervallet:

Sub DeleteHiddenRows () Dim sht As Worksheet Dim LastRow Set sht = ActiveSheet LastRow = sht.UsedRange.Rows (sht.UsedRange.Rows.Count) .Row For i = LastRow To 1 Step -1 If Rows (i) .Hidden = True Sedan rader (i) .EntireRow.Delete Next End Sub

Ovanstående VBA -kod tar först reda på det sista radnumret i det använda intervallet och tilldelar variabeln 'LastRow' det radnumret.

Detta sista radnummer används sedan i en For Next -slinga, där det börjar från den sista raden och kontrollerar om det är dolt eller inte.

Om det är dolt raderas hela raden. Och om det inte är dolt lämnar koden den raden som den är och flyttar till raden ovanför den. Denna slinga söker efter alla rader och raderar alla dolda rader som den möter i processen.

Om du vill ta bort alla dolda kolumner i det använda intervallet, använd VBA -koden nedan:

Sub DeleteHiddenColumns () Dim sht As Worksheet Dim LastCol as Integer Set sht = ActiveSheet LastCol = sht.UsedRange.Columns (sht.UsedRange.Columns.Count) .Column For i = LastCol To 1 Step -1 If Columns (i) .Hidden = True Then Columns (i) .EntireColumn.Delete Next End Sub

Detta fungerar igen på samma sätt, där vi i stället för rader söker efter kolumner.

Så det tar reda på det sista kolumnnumret i det använda intervallet, tilldelar det till en variabel och använder sedan slingan för att gå från den sista kolumnen till den första kolumnen och ta bort alla dolda kolumner i processen.

Och om du vill ha en kod som tar bort alla dolda rader, liksom de dolda kolumnerna, använd VBA -koden nedan:

Sub DeleteHiddenRowsColumns () Dim sht As Worksheet Dim LastRow as Integer Dim LastCol as Integer Set sht = ActiveSheet LastRow = sht.UsedRange.Rows (sht.UsedRange.Rows.Count) .Row LastCol = sht.UsedRange.Columns (sht.UsedRange. Columns.Count) .Column For i = LastRow To 1 Step -1 If Rows (i) .Hidden = True Then Rows (i) .EntireRow.Delete Next For i = LastCol To 1 Step -1 If Columns (i) .Hidden = True Then Columns (i) .EntireColumn.Delete Next End Sub

Detta är bara den kombinerade koden för både rader och kolumner och fungerar på samma sätt.

Istället för en slinga använder den två separata slingor, där den först går igenom alla rader, och sedan går den igenom alla kolumner. Och i processen raderar den alla dolda rader och kolumner som den möter.

Observera att du måste placera denna VBA -kod i en vanlig modul i Visual Basic Editor. Du kan sedan köra koden direkt från VB -redigeraren, med hjälp av makrodialogrutan eller genom att lägga till detta makro i snabbåtkomstverktygsfältet.

Om detta är något som du behöver göra ganska ofta kan du också lägga till den här koden i den personliga makro -arbetsboken så att du får tillgång till den från alla arbetsböcker på ditt system.

Från ett specifikt cellintervall

Om du har ett specifikt intervall från vilket du vill ta bort dolda rader och kolumner måste du ange det i koden.

Detta säkerställer att koden endast cirkulerar genom raderna och kolumnerna i det angivna intervallet och lämnar de andra områdena i kalkylbladet orörda

Under VBA -koden som skulle göra detta:

Sub DeleteHiddenRowsColumns () Dim sht As Worksheet Dim Rng As Range Dim LastRow As Integer Dim RowCount As Integer Set sht = ActiveSheet Set Rng = Range ("A1: K200") RowCount = Rng.Rows.Count LastRow = Rng.Rows (Rng. Rows.Count) .Row ColCount = Rng.Columns.Count LastCol = Rng.Columns (Rng.Columns.Count) .Column For i = LastRow To LastRow - RowCount Step -1 If Rows (i) .Hidden = True Then Rows ( i) .EntireRow.Delete Next For j = LastCol To LastCol - ColCount Step -1 If Columns (j) .Hidden = True Then Columns (j) .EntireColumn.Delete Next End Sub

I koden ovan har jag angett intervallet som A1: K200.

Detta gör att koden går igenom alla rader och kolumner i det angivna intervallet och tar bort alla dolda rader och kolumner som den stöter på.

Om du har dolda rader eller kolumner utanför detta intervall kommer de att förbli opåverkade.

Så här kan du ta bort dolda rader och kolumner i Excel.

Om du vill göra det i hela arbetsboken kan du använda alternativet Document Inspector. Och om du behöver mer kontroll kan du använda VBA -koder som visas ovan.

Jag hoppas att du tyckte att denna handledning var användbar!

wave wave wave wave wave