VBA Delete Files | Exemples per suprimir files d'Excel mitjançant VBA

Excel VBA Delete Row

Normalment, al full de càlcul Excel, tenim dos mètodes diferents per esborrar files: una és la drecera de teclat i l’altre mitjançant el mètode de clic dret i inserció, però a VBA hem d’utilitzar l’ordre delete i la declaració del full de càlcul per eliminar totes les files juntes. això és que si hem de suprimir una sola fila donem una única referència de fila, però per a les diverses columnes donem referències de diverses files.

Mitjançant el mètode VBA Delete Row Method, podem eliminar totes les files en blanc, podem eliminar la fila en funció del valor de la cel·la, també podem eliminar tota la fila si alguna de les cel·les està en blanc.

En aquest article, parlarem del mètode "VBA Delete Row". Mantingueu-vos ocupats durant els propers 15 a 20 minuts per conèixer el concepte.

Com esborra la fila?

Podeu descarregar aquesta plantilla VBA Delete Row Excel aquí: plantilla VBA Delete Row Excel

Exemple 1

A VBA hem d’esmentar la fila que suprimim.

Codi:

 Sub DeleteRow_Example1 () Cel·les (1, 1) Final Sub 

Les cel·les (1, 1) significa la primera columna de la primera fila, és a dir, la cel·la A1. A continuació, fem servir el mètode "eliminar".

Codi:

 Sub DeleteRow_Example1 () Cel·les (1, 1). Suprimeix End Sub 

Ara se suprimirà la primera cel·la. Tots els valors del costat dret canviaran una cel·la a l'esquerra.

Exemple 2

Si voleu eliminar tota la fila, hem d'utilitzar la propietat "EntireRow", llavors hem d'utilitzar el mètode "delete" per eliminar tota la fila de la cel·la que hem seleccionat.

Codi:

 Sub DeleteRow_Example2 () Cel·les (1, 1). Suprimeix la subfin 

Per exemple, he introduït uns quants caràcters en un full Excel de la següent manera.

Ara, si executo aquest codi, suprimirà tota la fila ni una sola cel·la.

Exemple 3

Podem eliminar la fila utilitzant diverses maneres. A l'exemple anterior, hem suprimit la fila mitjançant la propietat CELLS, ara veurem com eliminar-la mitjançant la propietat ROWS.

Ara hem d’esmentar quina és la fila que hem de suprimir, diguem que hem de suprimir la cinquena fila.

Ara utilitzeu la propietat "EntireRow".

Després de seleccionar la propietat, què hem de fer, és a dir, el mètode. Hem de suprimir la fila.

Codi:

 Sub DeleteRow_Example3 () Files (5). EnterRow.Delete End Sub 

Per tant, aquest codi suprimirà la cinquena fila.

Exemple # 4

Suprimiu diverses files mitjançant l’objecte Range

Com suprimim diverses files?

Podem utilitzar l’objecte VBA RANGE per eliminar més d’una fila. Suposem que teniu alguns valors de les cel·les A1 a A6.

Ara vull suprimir les 5 primeres files, de manera que puc fer referència a aquestes files fent servir l'objecte Range com a "Rang (" A1: A5 ")"

Codi:

 Sub DeleteRow_Example4 () Range ("A1: A5") End Sub 

Ara vull fer servir la paraula propietat "EntireRow".

Codi:

 Sub DeleteRow_Example4 () Range ("A1: A5"). Subtita fila completa 

En tota aquesta fila, hem de dur a terme el mètode de supressió, de manera que utilitzeu el mètode Delete.

Codi:

 Sub DeleteRow_Example4 () Range ("A1: A5"). EntireRow. Suprimeix End Sub 

Ara se suprimiran les files seleccionades.

Exemple núm. 5

Suprimeix les files segons el valor de la cel·la

També ho podem fer servir "EntireRow.Delete" mètode per suprimir la fila en funció del valor de la cel·la a VBA. Per exemple, tinc valors Sí i No de la cel·la A1 a A10.

Ara hem de suprimir les files que tinguin el valor "No". Per realitzar aquesta tasca hem d’utilitzar la funció “IF” amb bucles per eliminar totes les files que tinguin el valor de “No”.

A continuació, el codi ens farà la feina.

Codi:

 Sub DeleteRow_Example5 () Dim k com enter Per a k = 10 a 1 Pas -1 Si cel·les (k, 1). Valor = "No" Aleshores Cel·les (k, 1). 

Exemple núm. 6

Suprimiu totes les files de cel·les en blanc

Hi ha situacions en què hem de suprimir tota la fila si alguna de les cel·les de l’interval està en blanc. Per exemple, tinc a continuació un conjunt de dades.

Totes les cel·les de colors estan en blanc, de manera que he de suprimir tota la fila. Podem realitzar aquesta tasca amb dos conjunts de codi. A continuació es mostra el codi.

Codi:

 Sub DeleteRow_Example6 () Range ("A1: F10"). SpecialCells (xlCellTypeBlanks) .EntireRow.Delete End Sub 

Això identificarà les cel·les en blanc de l’interval A1 a F10. Si les cel·les en blanc que es trobin eliminaran tota la fila.

El problema d’aquest codi és que només suprimirà la fila de la cel·la en blanc només de l’interval A1 a F10, però si hi ha alguna cel·la en blanc en qualsevol altra cel·la, no se suprimirà. Per tant, tenint això en compte, he escrit un codi més.

Codi:

 Sub DeleteRow_Example7 () Dim RangeToDelete As Range Dim DeletionRange As Range Set RangeToDelete = Application.InputBox ("Seleccioneu l'interval", "Eliminació de files de cel·les en blanc", escriviu: = 8) Establir DeletionRange = RangeToDelete RangeToDelete.SpecialCells (xlCowCellType). . Esborra finalització sub 

Quan executeu aquest codi, primer us demanarà que seleccioneu l’interval amb un quadre d’entrada que aparegui davant vostre.

Després de seleccionar l'interval que heu de fer clic a D'acord, se suprimiran totes les files de cel·les en blanc de l'interval seleccionat.