Når et Excel-regneark vokser til å omfatte tusenvis , eller til og med hundretusener , rader , manuell fjerning av hver enkelt rad ville ta en evighet . Mens en rask sortering ville bare flytte hver tomme raden til bunnen , i hovedsak " slette " det, vil dette ikke fungere hvis du trenger dataene til å bo i sin nåværende rekkefølge. For å fjerne tomme rader uten å endre rekkefølgen på et regneark , må du få tilgang til Excel Visual Basic -konsollen og lage en makro . Instruksjoner
en
Åpne Excel- regneark som du trenger ønsker å jobbe med . Deretter trykker du "Alt" og " F11 " for å åpne opp Visual Basic konsollen .
2
Høyreklikk på noen av oppføringene under " VBAProject " overskriften på venstre side av VBA -konsollen . Beveg musen over "Sett inn" og velg " Module" fra listen over alternativer. Den nye modulen vil automatisk bli valgt , og høyre halvdel av konsollen vil bli en blank hvit side . Hvis du har flere regneark åpent , være sikker på at du legger modulen til riktig " VBAProject . " Navnet på den spesifikke dokumentet vil bli plassert til høyre for " VBAProject " overskriften
3
Kopier følgende kode til toppen av blindmodulen side: .
< P > Sub DeleteBlankRows ( )
Dim x As Long
p Med Application
. Beregning = xlCalculationManual
. ScreenUpdating = False
End med
" Sub " kommandoen oppretter makroen og " Dim " kommandoen oppretter en variabel som du vil bruke senere . Den " Beregning " og " ScreenUpdating " kommandoer slå av deres respektive funksjoner , noe som gjør makroen kjøre problemfritt på store regneark
4
Lim inn følgende kode rett under det siste settet : .
med ActiveSheet
Cells.Replace _
Hva: = "" , erstatning: = "" , _
lookat : = xlWhole , matchCase : = False
< p> For x = . Cells.SpecialCells ( xlCellTypeLastCell ) . Row _
en Step -1
p Hvis WorksheetFunction.CountA ( . Rows ( x ) ) = 0 Then
< p> ActiveSheet.Rows ( x ) . Slett
End If
Neste
End With
" Cells.Replace "-kommandoen , som inkluderer to linjer direkte under den, ser for eventuelle celler som bare inkluderer et mellomrom, og erstatter den plassen med ingenting. Slettingen gjenkjenner ikke en tom plass som en tom celle , så uten dette stykke kode , ville en rad med bare en tom plass ikke får slettet . "For "-kommandoen har koden start på den siste cellen på arket og jobbe seg tilbake opp til toppen. "Hvis" statement sjekker om raden er blank , og deretter sletter det hvis det er
5
Kopier og lim inn følgende kode rett under siste del av koden : .
< p> Med Application
. Beregning = xlCalculationAutomatic
. ScreenUpdating = sant
End With
End Sub
Denne koden setter rett og slett den " Beregning " og " ScreenUpdating " innstillinger tilbake til det normale , og deretter stenger ut koden med " End sub. " Trykk "Alt" og " F11 " for å avslutte VBA -konsollen . Alle endringene lagres automatisk .
6
Klikk på " Utvikler " fanen øverst på skjermen. Klikk på " Macro" -knappen for å få opp en liste over dine makroer. Velg " DeleteBlankRows " makro og trykk på "Kjør". Makroen vil slette alle tomme rader fra regnearket.