Sisällysluettelo
Joskus meidän on piilotettava joitakin tiettyjä rivejä, kun käytämme suurta tietokokonaisuuttamme Excelissä luettavuuden parantamiseksi. Implementointi VBA-makro on tehokkain, nopein ja turvallisin tapa suorittaa mikä tahansa toiminto Excelissä. Tässä artikkelissa näytämme, miten voit piilottaa rivejä Excelissä eri kriteerien perusteella VBA-makron avulla.
Lataa työkirja
Voit ladata ilmaisen harjoitus-Excel-työkirjan täältä.
Piilota rivit VBA.xlsm:llä
14 menetelmää VBA: n avulla rivien piilottamiseksi Excelissä
Tässä jaksossa käsitellään 12 eri menetelmää, joissa on VBA osoitteeseen piilota rivit Esimerkki, jota käytämme koko artikkelin ajan, on esitetty alla.
1. Upota VBA piilottaa yksittäinen rivi Excelissä
Jos haluat piilottaa yhden rivin kanssa VBA koodia ja seuraa sitten alla esitettyjä vaiheita. Meidän tapauksessamme me piilota rivi numero 5 ( Sukunimi ) aineistostamme.
Vaiheet:
- Paina Alt + F11 näppäimistöllä tai siirry välilehdelle Kehittäjä -> Visual Basic avata Visual Basic Editor .
- Valitse ponnahdusikkunan valikkoriviltä seuraava vaihtoehto Lisää -> Moduuli .
- Kopioi seuraava koodi ja liitä se koodiikkunaan.
Sub HideSingleRow() Worksheets("Single").Range("5:5").EntireRow.Hidden = True End Sub
Koodisi on nyt valmis ajettavaksi.
Tässä,
- Työarkit("Single") = Aseta työarkin nimi.
- Range("5:5") = Pass rivi numero 5 sisällä Valikoima menetelmä.
- Paina F5 näppäimistöllä tai valitse valikkoriviltä Suorita -> Suorita Sub/UserForm . Voit myös vain klikata pieni Play-kuvake alivalikkopalkissa makron suorittamiseksi.
Huomaa alla olevassa kuvassa, rivi numero 5 on piilotettu sen jälkeen, kun VBA koodi.
Lue lisää: Kaava rivien piilottamiseksi Excelissä (7 menetelmää)
2. Aseta makro, jolla piilotetaan vierekkäiset rivit Excelissä.
Olet oppinut piilottamaan yksittäisen rivin komennolla VBA . Mutta oletetaan, että haluat piilottaa rivijonon jotka ovat vierekkäiset . Voit tehdä sen myös VBA Excelissä. piilota rivit 5-7 edellä esitetystä tietokokonaisuudestamme.
Vaiheet:
- Samalla tavalla kuin ennenkin, avaa Visual Basic Editor alkaen Kehittäjä välilehti ja Lisää a Moduuli koodiikkunassa.
- Kopioi koodiikkunaan seuraava koodi ja liitä se.
Sub HideContiguousRows() Worksheets("Contiguous").Range("5:7").EntireRow.Hidden = True End Sub
Koodisi on nyt valmis ajettavaksi.
Tässä,
- Työarkit("Vierekkäiset") = Aseta työarkin nimi.
- Range("5:7") = Pass rivi numero 5-7 sisällä Valikoima menetelmä.
- Suorita tätä koodia ja katso seuraavasta kuvasta, että rivit 5-7 ovat nyt piilossa.
Lue lisää: Kuinka piilottaa ja poistaa rivit Excelissä (6 helpointa tapaa)
3. Upota makro ei-yhtenäisten rivien salaamiseen.
Tällä kertaa opit, miten piilota rivit Excelissä, jotka ovat ei-yhtenäinen kanssa VBA . Meidän aineistossamme koodi piilota rivit 5, 6, 8 ja 9 on esitetty jäljempänä.
Vaiheet:
- Kuten aiemmin on osoitettu, avoin Visual Basic Editor alkaen Kehittäjä välilehti ja Lisää a Moduuli koodiikkunassa.
- Kopioi koodiikkunaan seuraava koodi ja liitä se.
Sub HideNonContiguousRows() Worksheets("Non-Contiguous").Range("5:6, 8:9").EntireRow.Hidden = True End Sub
Koodisi on nyt valmis ajettavaksi.
Tässä,
- Taulukkolomakkeet("Epäyhtenäinen") = Aseta työarkin nimi.
- Range("5:6, 8:9") = Pass rivi numero 5-6 ja 8-9 sisällä Valikoima menetelmä.
- Suorita tämä koodinpätkä ja katso, että rivit 5-6 ja 8-9 ovat piilossa seuraavassa kuvassa.
Lue lisää: Kuinka piilottaa rivit Excelissä (6 tehokasta menetelmää)
4. Makro kaikkien Excelin tekstejä sisältävien rivien piilottamiseen Excelissä
Jos haluat piilottaa kaikki tekstiä sisältävät rivit arvot, seuraa sitten alla olevia ohjeita.
Vaiheet:
- Avaa Visual Basic Editor alkaen Kehittäjä välilehti ja Lisää a Moduuli koodiikkunassa.
- Kopioi koodiikkunaan seuraava koodi ja liitä se.
Sub HideAllRowsContainsText() LastRow = 1000 'Oletetaan, että tietokokonaisuudessa on 1000 riviä For i = 1 To LastRow 'Kierrä jokainen rivi läpi ja tarkista vaadittu ehto 'Piilottaa kaikki rivit, joissa on tekstidataa If IsNumeric(Range("C" & i)) = False Then Rows(i).EntireRow.Hidden = True Next End Sub
Koodisi on nyt valmis ajettavaksi.
Tässä,
- IsNumeric(Range("C" & i))) = Aineistomme tiedot alkavat vuodesta sarake C, joten ohitimme C sisällä Valikoima menetelmä.
- Suorita tämä koodi ja huomaat kaikki rivit jotka olivat joka sisältää tekstiä arvot ovat nyt piilossa.
Lue lisää: Kuinka poistaa useita rivejä Excelissä (9 menetelmää)
5. Makro kaikkien Excelin numeroita sisältävien rivien peittämiseksi
Ja jos haluat piilottaa kaikki numeerisia arvoja sisältävät rivit kanssa VBA koodi ja seuraa sitten alla olevia ohjeita.
Vaiheet:
- Avaa Visual Basic Editor alkaen Kehittäjä välilehti ja Lisää a Moduuli koodiikkunassa.
- Kopioi koodiikkunaan seuraava koodi ja liitä se.
Sub HideAllRowsContainsNumbers() LastRow = 1000 'Oletetaan, että tietokokonaisuudessa on 1000 riviä For i = 4 To LastRow 'Käydään läpi jokainen rivi ja tarkistetaan, että vaadittu ehto täyttyy 'Asetamme i = 4, koska tietomme alkavat riviltä 4 'Piilotetaan kaikki numeerista dataa sisältävät rivit If IsNumeric(Range("C" & i)) = True Then Rows(i).EntireRow.Hidden = True Next End Sub
Koodisi on nyt valmis ajettavaksi.
Tässä,
- IsNumeric(Range("C" & i))) = Aineistomme tiedot alkavat vuodesta sarake C, joten ohitimme C sisällä Valikoima menetelmä.
- Suorita tämä koodi ja huomaa, että kaikki rivit jotka olivat jotka sisältävät numeerisia arvoja ovat nyt piilossa.
Lue lisää: Piilota päällekkäiset rivit yhden sarakkeen perusteella Excelissä (4 menetelmää)
6. Makro nollaa (0) sisältävien rivien piilottamiseksi Excelissä
Oletetaan, että haluat piilottaa vain tietyn sarakkeen rivit, jotka ovat tilalla 0 (nolla) Katsokaa seuraavaa tietosarjaa, jossa E-pylväs pitää 0 in rivi 7 ja 82 rivillä 10 Opimme, miten piilottaa vain rivin, jolla on 0 ( rivi 7 ) kanssa VBA Excelissä.
Vaiheet:
- Avaa Visual Basic Editor alkaen Kehittäjä välilehti ja Lisää a Moduuli koodiikkunassa.
- Kopioi koodiikkunaan seuraava koodi ja liitä se.
Sub HideRowContainsZero() LastRow = 1000 'Oletetaan, että tietokokonaisuudessa on 1000 riviä For i = 4 To LastRow 'Kierretään jokainen rivi läpi ja tarkistetaan vaadittu ehto 'Asetamme i = 4, koska datamme alkaa riviltä 4 'Piilotetaan rivi, joka sisältää 0 sarakkeessa E If Range("E" & i) = 0 Then Rows(i).EntireRow.Hidden = True Next End Sub
Koodisi on nyt valmis ajettavaksi.
- Suorita tämä koodi ja huomaa, että rivi ( rivi 7 ), jotka sisälsivät 0 osoitteessa sarake E on nyt piilotettu, kun taas rivi 10 joka kuljettaa 82 ei ole piilotettu.
Lue lisää: Miten piilottaa tyhjät rivit Excel VBA: ssa (4 hyödyllisiä menetelmiä)
7. Makron toteuttaminen negatiivisia arvoja sisältävien rivien piilottamiseksi Excelissä
Aivan kuten voit piilottaa rivit, jotka sisältävät nollan samasta sarakkeesta, voit myös piilottaa piilottaa negatiivisia arvoja sisältävät rivit myös. Seuraavassa esitetyssä tietokokonaisuudessa, jossa sarake E sisältää sekä negatiivisia että positiivisia arvoja, näemme koodin, joka piilottaa vain negatiivisen arvon.
Vaiheet:
- Avaa Visual Basic Editor alkaen Kehittäjä välilehti ja Lisää a Moduuli koodiikkunassa.
- Kopioi koodiikkunaan seuraava koodi ja liitä se.
Sub HideRowContainsNegative() LastRow = 1000 'Oletetaan, että tietokokonaisuudessa on 1000 riviä For i = 4 To LastRow 'Käy läpi jokainen rivi ja tarkista vaadittu ehto 'Asetamme i = 4, koska datamme alkaa riviltä 4 'Piilottaa rivi, joka sisältää negatiivisia arvoja E-sarakkeessa If IsNumeric(Range("E" & i)) = True Then If Range("E" & i) <0 ThenRows(i).EntireRow.Hidden = True End If Next End Sub
Koodisi on nyt valmis ajettavaksi.
- Suorita tämä koodi ja huomaa, että rivi 7 joka sisälsi negatiivinen arvo (-10) osoitteessa sarake E on nyt piilotettu, kun taas rivi 10 joka kuljettaa 82 ei ole piilotettu.
8. Sulauta VBA positiivisia arvoja sisältävien rivien peittämiseksi Excelissä.
Tällä kertaa seuraavassa esitetyllä tietokokonaisuudella, jossa sarake E sisältää molemmat nolla positiivisia arvoja, näemme, että VBA koodi, joka piilottaa vain positiivisen .
Vaiheet:
- Avaa Visual Basic Editor alkaen Kehittäjä välilehti ja Lisää a Moduuli koodiikkunassa.
- Kopioi koodiikkunaan seuraava koodi ja liitä se.
Sub HideRowContainsPositive() LastRow = 1000 'Oletetaan, että tietokokonaisuudessa on 1000 riviä For i = 4 To LastRow 'Käy läpi jokainen rivi ja tarkista vaadittu ehto 'Asetamme i = 4, koska datamme alkaa riviltä 4 'Piilotamme rivin, joka sisältää positiivisia arvoja E-sarakkeessa If IsNumeric(Range("E" & i)) = True Then If Range("E" & i)> 0 ThenRows(i).EntireRow.Hidden = True End If Next End Sub
Koodisi on nyt valmis ajettavaksi.
- Suorita tämä koodi ja huomaa, että rivi 7 joka sisälsi positiivinen arvo (55) osoitteessa sarake E on nyt piilotettu, kun taas rivi 10 joka kuljettaa 0 ei ole piilotettu.
Lue lisää: VBA piilottaa rivit solun arvon perusteella Excelissä (14 esimerkkiä)
9. Makro parittomia numeroita sisältävien rivien piilottamiseksi Excelissä
Voit piilottaa rivit, joissa on parittomia numeroita Esimerkissä, jonka näytimme tämän artikkelin alussa, sarake E pitää sekä parittomia että parillisia lukuja rivit 7 ja 10 . Opettelemme koodin rivin piilottaminen joka pitää sisällään parittomat numerot vain.
Vaiheet:
- Avaa Visual Basic Editor alkaen Kehittäjä välilehti ja Lisää a Moduuli koodiikkunassa.
- Kopioi koodiikkunaan seuraava koodi ja liitä se.
Sub HideRowContainsOdd() LastRow = 1000 'Oletetaan, että datasetissä on 1000 riviä For i = 4 To LastRow 'Käy läpi jokainen rivi ja tarkista vaadittu ehto 'Asetamme i = 4, koska datamme alkaa riviltä 4 'Piilotamme rivin, joka sisältää positiivisia arvoja E-sarakkeessa If IsNumeric(Range("E" & i)) = True Then If Range("E" & i) Mod 2 = 1 ThenRows(i).EntireRow.Hidden = True End If Next End Sub
Koodisi on nyt valmis ajettavaksi.
- Suorita tämä koodinpätkä ja huomaa, että vain rivi 7 joka sisälsi pariton luku (55) osoitteessa sarake E on nyt piilotettu, kun taas rivi 10 joka kuljettaa parillinen luku (82) ei ole piilotettu.
10. VBA parillisia numeroita sisältävien rivien piilottamiseksi Excelissä
Vastaavasti voit piilottaa rivit, joilla on parilliset numerot Esimerkissä, jonka näytimme tämän artikkelin alussa, sarake F pitää sekä parittomia että parillisia lukuja rivit 7 ja 10 Opettelemme koodin rivin piilottaminen joka pitää sisällään parilliset luvut vain.
Vaiheet:
- Avaa Visual Basic Editor alkaen Kehittäjä välilehti ja Lisää a Moduuli koodiikkunassa.
- Kopioi koodiikkunaan seuraava koodi ja liitä se.
Sub HideRowContainsEven() LastRow = 1000 'Oletetaan, että tietokokonaisuudessa on 1000 riviä For i = 4 To LastRow 'Käydään läpi jokainen rivi ja tarkistetaan, että vaadittu ehto täyttyy 'Asetamme i = 4, koska datamme alkaa riviltä 4 'Piilotetaan rivi, joka sisältää positiivisia arvoja F-sarakkeessa If IsNumeric(Range("F" & i)) = True Then If Range("F" & i) Mod 2 = 0 ThenRows(i).EntireRow.Hidden = True End If Next End Sub
Koodisi on nyt valmis ajettavaksi.
- Suorita tätä koodia ja huomaa, että vain rivi 7 joka sisälsi parillinen luku (100) osoitteessa sarake F on nyt piilotettu, kun taas rivi 10 joka kuljettaa pariton luku (75) ei ole piilotettu.
Lue lisää: Excel VBA: Poista kaikki rivit Excelissä (5 käytännön esimerkkiä).
11. Lisää makro piilottaa rivit, jotka ovat suurempia kuin tietty ehto.
Voit piilottaa rivit, jotka ovat suurempia kuin tietty arvo VBA Excel. Oletetaan, että haluat piilottaa rivejä alkaen sarake E jossa arvo on yli 80 Näin se tehdään:
Vaiheet:
- Avaa Visual Basic Editor alkaen Kehittäjä välilehti ja Lisää a Moduuli koodiikkunassa.
- Kopioi koodiikkunaan seuraava koodi ja liitä se.
Sub HideRowContainsGreater() LastRow = 1000 'Oletetaan, että tietokokonaisuudessa on 1000 riviä For i = 4 To LastRow 'Käy läpi jokainen rivi ja tarkista, onko vaadittu ehto 'Asetamme i = 4, koska datamme alkaa riviltä 4 'Piilottaa rivi, joka sisältää positiivisia arvoja E-sarakkeessa If IsNumeric(Range("E" & i)) = True Then If Range("E" & i)> 80 ThenRows(i).EntireRow.Hidden = True End If Next End Sub
Koodisi on nyt valmis ajettavaksi.
- Suorita tätä koodia ja huomaa, että vain rivi 10 joka sisälsi 82 (joka on suurempi kuin 80) sarake E on nyt piilotettu, kun taas rivi 7 joka kuljettaa 55 ei ole piilotettu.
Lue lisää: Piilota rivit solun arvon perusteella Excelin ehdollisen muotoilun avulla
12. Upota makro kattamaan rivit, jotka ovat pienempiä kuin tietty ehto Excelissä
Voit myös piilottaa rivit, jotka ovat pienempiä kuin tietty arvo VBA Excel. Oletetaan, että haluat piilottaa rivejä alkaen sarake E jossa arvo on alle 80 Näin se tehdään:
Vaiheet:
- Avaa Visual Basic Editor alkaen Kehittäjä välilehti ja Lisää a Moduuli koodiikkunassa.
- Kopioi koodiikkunaan seuraava koodi ja liitä se.
Sub HideRowContainsLess() LastRow = 1000 'Oletetaan, että tietokokonaisuudessa on 1000 riviä For i = 4 To LastRow 'Käy läpi jokainen rivi ja tarkista vaadittu ehto 'Asetamme i = 4, koska datamme alkaa riviltä 4 'Piilotamme rivin, joka sisältää positiivisia arvoja E-sarakkeessa If IsNumeric(Range("E" & i)) = True Then If Range("E" & i) <80 ThenRows(i).EntireRow.Hidden = True End If Next End Sub
Koodisi on nyt valmis ajettavaksi.
- Suorita tätä koodia ja huomaa, että vain rivi 7 joka sisälsi 55 (joka on alle 80) vuonna sarake E on nyt piilotettu, kun taas rivi 10 joka on kuljetus 82 ei ole piilotettu.
13. Rivien peittäminen solun tekstiarvon perusteella makron avulla
Oletetaan, että haluat piilottaa tietyn tekstin sisältävän rivin Tapauksessamme annamme esimerkin rivistä, joka sisältää sanan "". Kemia ", rivi 6 ja antaa sinulle koodin, jolla voit piilottaa kyseisen rivin.
Vaiheet:
- Avaa Visual Basic Editor alkaen Kehittäjä välilehti ja Lisää a Moduuli koodiikkunassa.
- Kopioi koodiikkunaan seuraava koodi ja liitä se.
Sub HideRowCellTextValue() StartRow = 4 LastRow = 10 iCol = 4 For i = StartRow To LastRow If Cells(i, iCol).Value "Chemistry" Then Cells(i, iCol).EntireRow.Hidden = False Else Cells(i, iCol).EntireRow.Hidden = True End If Next i End Sub
Koodisi on nyt valmis ajettavaksi.
Tässä,
- StartRow = 4 -> Ensimmäinen rivi tietokokonaisuudesta.
- LastRow = 10 -> Viimeinen rivi tietokokonaisuudesta.
- iCol = 4 -> sarakkeen osoite että sisältää tekstin arvo.
- Suorita tämä koodi ja huomaa, että rivi numero 6 joka koostuu sanasta " Kemia " on piilotettu.
14. Makro rivien piilottamiseen solun numeerisen arvon perusteella Excelissä
Aiemmin olet nähnyt, miten piilottaa rivi solun tekstiarvon perusteella, tällä kertaa opit, miten se tehdään, kun solun tekstiarvo on arvo on numeerinen Tapauksessamme annamme esimerkin rivistä, joka sisältää numeerisen arvon "". 87 ", rivi 7 ja antaa sinulle koodin, jolla voit piilottaa kyseisen rivin.
Vaiheet:
- Avaa Visual Basic Editor alkaen Kehittäjä välilehti ja Lisää a Moduuli koodiikkunassa.
- Kopioi koodiikkunaan seuraava koodi ja liitä se.
Sub HideRowCellNumValue() StartRow = 4 LastRow = 10 iCol = 4 For i = StartRow To LastRow If Cells(i, iCol).Value "87" Then Cells(i, iCol).EntireRow.Hidden = False Else Cells(i, iCol).EntireRow.Hidden = True End If Next i End Sub
Koodisi on nyt valmis ajettavaksi.
Tässä,
- StartRow = 4 -> Ensimmäinen rivi tietokokonaisuudesta.
- LastRow = 10 -> Viimeinen rivi tietokokonaisuudesta.
- iCol = 4 -> sarakkeen osoite että sisältää tekstin arvo.
- Suorita tämä koodi ja huomaa, että rivi numero 7 joka koostuu numeerisesta arvosta " 87 " on piilotettu.
Lue lisää: Kuinka piilottaa rivit solun arvon perusteella Excelissä (5 menetelmää)
Päätelmä
Tämä artikkeli osoitti, miten piilota rivit Excelissä VBA Toivottavasti tästä artikkelista on ollut teille paljon hyötyä. Kysykää rohkeasti, jos teillä on aiheeseen liittyviä kysymyksiä.