Quando un foglio di calcolo Excel cresce fino a comprendere migliaia , o addirittura centinaia di migliaia , di righe , rimuovere manualmente ogni singola riga sarebbe voluto per sempre . Mentre una rapida sorta sarebbe sufficiente spostare ogni riga vuota in fondo , essenzialmente "eliminazione" , questo non funzionerà se avete bisogno dei dati per rimanere nel suo ordine attuale . Per rimuovere le righe vuote , senza modificare l'ordine di un foglio di lavoro , è necessario accedere alla console di Visual Basic di Excel e creare una macro . Istruzioni
1
Aprire il foglio di calcolo Excel che avete bisogno desidera lavorare . Quindi premere "Alt" e " F11 " per aprire la console di Visual Basic .
2
pulsante destro del mouse su una qualsiasi delle voci sotto la " VBAProject " voce sul lato sinistro della console VBA . Muovi il mouse su "Inserisci" e scegliere " Modulo " dalla lista di opzioni. Verrà automaticamente selezionato il nuovo modulo , e la metà destra della console diventerà una pagina bianca vuota . Se si dispone di più fogli di lavoro aperti , essere sicuri che si sta aggiungendo il modulo per la corretta " VBAProject ". Il nome del documento specifico sarà situato alla destra del " VBAProject " voce
3
Copiare il seguente codice all'inizio della pagina modulo vuoto : .
< P > Sub DeleteBlankRows ( ) per
Dim x As Long
Con Application
. Calcolo = xlCalculationManual
. ScreenUpdating = False
End con
il comando "Sub " crea la macro e il comando " Dim " stabilisce una variabile che si intende utilizzare in seguito. I comandi " ScreenUpdating " "Calcolo " e spegnere le rispettive funzioni , rendendo la macro funzionare senza problemi su grandi fogli di calcolo
4
Incollare il seguente codice direttamente sotto l'ultima serie : .
con ActiveSheet
Cells.Replace _
What: = " " , Replacement : = " " , _
LookAt : = xlWhole , MatchCase : = False
< p > Per x = . Cells.SpecialCells ( xlCellTypeLastCell ) . Row _
Per 1 Fase -1
WorksheetFunction.CountA ( . Rows ( x ) ) = 0 Then
< p > ActiveSheet.Rows ( x ) . Elimina
End If
Avanti
End With
il comando " Cells.Replace ", che comprende la due linee direttamente sotto di esso, cerca qualsiasi cellule che semplicemente tra cui uno spazio vuoto , e sostituisce quello spazio con niente . Il processo di cancellazione non riconosce uno spazio vuoto come una cella vuota , quindi senza questo pezzo di codice , ogni riga con un semplice spazio vuoto non si sarebbe cancellato. Il comando " per " ha il codice di avviamento presso l'ultima cella nel foglio e lavorare la sua strada fino alla cima . L' istruzione "if" controlla se la riga è vuota , e poi lo elimina se è
5
Copia e incolla il seguente codice direttamente sotto l'ultimo pezzo di codice : .
< p > Con Application
. Calcolo = xlCalculationAutomatic
. ScreenUpdating = True
End With End Sub
Questo codice mette semplicemente le impostazioni " ScreenUpdating " tornare alla normalità e quindi "Calcolo" e chiude il codice con " End sub . " Premere il tasto " Alt " e " F11 " per uscire dalla console di VBA . Tutte le modifiche vengono salvate automaticamente .
6
Fare clic sulla scheda "Sviluppatore " nella parte superiore dello schermo. Fare clic sul pulsante "Macro" per visualizzare un elenco di macro. Selezionare la macro " DeleteBlankRows " e premere "Esegui". La macro elimina tutte le righe vuote dal foglio di lavoro.