VBA Poista rivit | Esimerkkejä Excel-rivien poistamisesta VBA: lla

Excel VBA Poista rivi

Normaalisti excel-laskentataulukossa meillä on kaksi erilaista tapaa poistaa rivit, joista yksi on pikanäppäin ja toinen käyttämällä hiiren kakkospainikkeella ja lisäysmenetelmää, mutta VBA: ssa meidän on käytettävä Poista-komentoa ja laskentataulukko-käskyä kaikkien rivien poistamiseksi yhdessä, temppu tämä on, että jos meidän on poistettava yksi rivi, annamme yhden rivin viitteen, mutta useille sarakkeille annamme useita riviviittauksia.

VBA Delete Row Method -menetelmällä voimme poistaa kaikki tyhjät rivit, voimme poistaa rivin solun arvon perusteella, voimme myös poistaa koko rivin, jos jokin soluista on tyhjä.

Tässä artikkelissa käsitellään menetelmää "VBA Poista rivi". Pidä itsesi varattuina seuraavat 15-20 minuuttia oppiaksesi käsitteestä.

Kuinka poistaa rivi?

Voit ladata tämän VBA Delete Row Excel -mallin täältä - VBA Delete Row Excel -malli

Esimerkki 1

VBA: ssa meidän on mainittava poistettava rivi.

Koodi:

 Sub DeleteRow_Example1 () Solut (1, 1) End Sub 

Solut (1, 1) tarkoittavat ensimmäisen rivin ensimmäistä saraketta eli A1-solua. Sitten käytämme menetelmää "poista".

Koodi:

 Sub DeleteRow_Example1 () Solut (1, 1). Poista End Sub 

Nyt tämä poistaa ensimmäisen solun. Kaikki oikean puolen arvot siirtävät yhden solun vasemmalle.

Esimerkki 2

Jos haluat poistaa koko rivin, meidän on käytettävä ominaisuutta "EntireRow", sitten meidän on käytettävä menetelmää "poista" poistamaan koko valitsemamme solun rivi.

Koodi:

Sub DeleteRow_Example2 () -solut (1, 1) .EntireRow. Poista End Sub

Esimerkiksi olen kirjoittanut muutaman merkin Excel-taulukoon seuraavasti.

Nyt jos suoritan tämän koodin, se poistaa koko rivin eikä yhtä solua.

Esimerkki 3

Voimme poistaa rivin useilla tavoilla. Yllä olevassa esimerkissä olemme poistaneet rivin käyttämällä CELLS-ominaisuutta, nyt näemme, kuinka poistaa käyttämällä ROWS-ominaisuutta.

Nyt meidän on mainittava, mikä rivi on poistettava, sanotaan, että meidän on poistettava viides rivi.

Käytä nyt ominaisuutta ”EntireRow”.

Valittuamme omaisuuden mitä meidän on tehtävä eli menetelmä. Meidän on poistettava rivi.

Koodi:

 Sub DeleteRow_Example3 () Rivit (5) .EntireRow.Delete End Sub 

Joten tämä koodi poistaa viidennen rivin.

Esimerkki 4

Poista useita rivejä käyttämällä Range Object -ohjelmaa

Kuinka poistamme useita rivejä?

VBA RANGE -objektilla voidaan poistaa useampi kuin yksi rivi. Oletetaan, että sinulla on joitain arvoja A1-A6-soluista.

Haluan nyt poistaa viisi ensimmäistä riviä, jotta voin viitata näihin riveihin käyttämällä Range-objektia "Range (" A1: A5 ")"

Koodi:

 Sub DeleteRow_Example4 () -alue ("A1: A5") Loppu Sub 

Nyt haluan käyttää sanaa ”EntireRow”.

Koodi:

 Sub DeleteRow_Example4 () -alue ("A1: A5") .EntireRow End Sub 

Koko tällä rivillä meidän on suoritettava poistomenetelmä, joten käytä Poista-menetelmää.

Koodi:

 Sub DeleteRow_Example4 () -alue ("A1: A5"). EntireRow .Delete End Sub 

Nyt tämä poistaa valitut rivit.

Esimerkki 5

Poista rivit solun arvon perusteella

Voimme myös käyttää tätä “EntireRow.Delete” -menetelmää rivin poistamiseksi VBA: n soluarvon perusteella. Minulla on esimerkiksi Kyllä ja Ei arvot soluista A1 A10.

Nyt meidän on poistettava rivit, joiden arvo on "Ei". Tämän tehtävän suorittamiseksi meidän on käytettävä toimintoa ”IF” silmukoilla poistamaan kaikki rivit, joiden arvo on ”Ei”.

Alla oleva koodi tekee työn meille.

Koodi:

 Sub DeleteRow_Example5 () Dim k kokonaislukuna k = 10-1 Vaihe -1 Jos solut (k, 1) .Arvo = "Ei", sitten Solut (k, 1) .EntireRow.Delete Loppu, jos Seuraava k End Sub 

Esimerkki 6

Poista kaikki tyhjät solurivit

On tilanteita, joissa meidän on poistettava koko rivi, jos jokin alueen soluista on tyhjä. Minulla on esimerkiksi alla joukko tietoja.

Kaikki värilliset solut ovat tyhjiä, joten minun on poistettava koko rivi. Voimme suorittaa tämän tehtävän kahdella koodisarjalla. Alla on koodi.

Koodi:

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

Tämä tunnistaa tyhjät solut alueella A1 - F10.Jos löydetyt tyhjät solut poistavat koko rivin.

Tämän koodin ongelmana on, että tyhjä solu rivi poistetaan vain alueelta A1 - F10, mutta jos solut ovat tyhjiä missään muussa solussa, sitä ei poisteta. Joten pitäen tämän mielessä, olen kirjoittanut vielä yhden koodin.

Koodi:

 Sub DeleteRow_Example7 () Dim RangeToDelete As Range Dim DeletionRange As Range Set RangeToDelete = Application.InputBox ("Valitse alue", "Tyhjien solujen rivien poisto", tyyppi: = 8) Aseta DeletionRange = RangeToDelete RangeToDelete.SpecialCells (xlCellTy). .Poista End Sub 

Kun suoritat tämän koodin ensin, se pyytää sinua valitsemaan alueen siten, että syöttöruutu näkyy edessäsi.

Kun olet valinnut alueen, napsauta OK, se poistaa kaikki valitun alueen tyhjät solurivit.


$config[zx-auto] not found$config[zx-overlay] not found