Ta vadnica bo pokazala različne načine brisanja vrstic in stolpcev v Excelu z uporabo VBA.
Izbrišite celotno vrstico ali stolpec
Če želite izbrisati celotno vrstico v VBA, uporabite to vrstico kode:
1 | Vrstice (1). Izbriši |
Upoštevajte, da uporabljamo Izbriši način za brisanje vrstice.
Namesto sklicevanja na Objekt vrstic, se lahko sklicujete na vrstice na podlagi njihovih Objekt obsega z EntireRow:
1 | Obseg ("a1"). EntireRow.Delete |
Podobno za brisanje celotnega stolpca uporabite te vrstice kode:
1 | Stolpci (1). Izbriši |
1 | Obseg ("a1"). Celoten stolpec.Delete |
Izbrišite več vrstic ali stolpcev
Z isto logiko lahko hkrati izbrišete tudi več vrstic:
1 | Vrstice ("1: 3"). Izbriši |
ali stolpci:
1 | Stolpci ("A: C"). Izbriši |
Upoštevajte, da se tukaj sklicujemo na posebne številke / črke stolpcev in stolpcev, obdane z narekovaji.
Seveda se lahko sklicujete tudi na EntireRow obsega:
1 | Obseg ("a1: a10"). EntireRow.Delete |
Opomba: Spodnji primeri prikazujejo samo brisanje vrstic, vendar, kot lahko vidite zgoraj, je skladnja skoraj enaka za brisanje stolpcev.
Izbrišite prazne / prazne vrstice
Ta primer bo izbrisal vrstico, če je celotna vrstica prazna:
1234567891011 | Sub DeleteRows_EntireRowBlank ()Zatemni celico kot obsegZa vsako celico v dosegu ("b2: b20")Če je Application.WorksheetFunction.CountA (cell.EntireRow) = 0 Potemcell.EntireRow.DeleteKonec ČeNaslednja celicaEnd Sub |
Uporablja funkcijo delovnega lista Excel: COUNTA.
Izbriši vrstico, če je celica prazna
To bo izbrisalo vrstico, če je določen stolpec v tej vrstici prazen (v tem primeru stolpec B):
1 | Obseg ("b3: b20"). Posebne celice (xlCellTypeBlanks) .EntireRow.Delete |
Izbriši vrstico glede na vrednost celice
S tem boste prešli skozi obseg in izbrisali vrstice, če določena vrednost celice v tej vrstici pravi »izbriši«.
1234567891011 | Sub DeleteRowswithSpecificValue ()Zatemni celico kot obsegZa vsako celico v dosegu ("b2: b20")Če cell.Value = "delete" Potemcell.EntireRow.DeleteKonec ČeNaslednja celicaEnd Sub |
Več primerov brisanja vrstic in stolpcev
Izbrišite podvojene vrstice
Ta koda bo izbrisala vse podvojene vrstice v obsegu:
1 | Obseg ("b2: c100"). RemoveDuplicates stolpci: = 2 |
Upoštevajte, da smo nastavili stolpce: = 2. To pove VBA, naj preveri prva dva stolpca podatkov, ko ugotavlja, ali so vrstice podvojene. Podvojeno najdemo le, če imata oba stolpca podvojene vrednosti.
Če bi to nastavili na 1, bi samo v prvi vrstici preverili dvojne vrednosti.
Izbriši vrstice tabele
Ta koda bo izbrisala drugo vrstico v tabeli s sklicevanjem na ListObjects.
1 | ThisWorkbook.Sheets ("Sheet1"). ListObjects ("list1"). ListRows (2) .Delete |
Izbrišite filtrirane vrstice
Če želite izbrisati samo vrstice, ki so vidne po filtriranju:
1 | Obseg ("b3: b20"). SpecialCells (xlCellTypeVisible) .EntireRow.Delete |
Izbriši vrstice v razponu
Ta koda bo izbrisala vse vrstice v razponu:
1 | Obseg ("a1: a10"). EntireRow.Delete |
Izbriši izbrane vrstice
Ta koda bo izbrisala vse izbrane vrstice:
1 | Selection.EntireRow.Delete |
Izbriši zadnjo vrstico
S tem se izbriše zadnja uporabljena vrstica v stolpcu B:
1 | Celice (vrstice. Število, 2). Konec (xlUp). |
Če spremenite 2 v 1, lahko izbrišete zadnjo uporabljeno vrstico v stolpcu A itd .:
1 | Celice (vrstice. Število, 1). Konec (xlUp). |
Brisanje stolpcev po številki
Če želite stolpec izbrisati po številki, uporabite kodo, kot je ta:
1 | Stolpci (2). Izbriši |