Tartalomjegyzék
Ma megmutatom, hogyan lehet sorokat számolni a VBA Excelben bármilyen adathalmazból. Megmutatom, hogyan lehet sorokat számolni egy adott tartományból, egy kiválasztott tartományból, egy adott kritériumnak való megfeleléssel, egy adott szövegértéknek való megfeleléssel és az üres cellák kizárásával.
Gyakorlati munkafüzet letöltése
Sorok számlálása VBA.xlsm segítségével5 módszer a sorok számolásához a VBA-val az Excelben
Itt van egy adathalmaz, amely tartalmazza néhány diák nevét és angol nyelvű jegyeit a Sunflower Kindergarten nevű iskolában.
Ma az a célunk, hogy megszámoljuk a sorok teljes számát egy VBA kód .
1. VBA-kód használata egy adott tartomány sorainak számlálásához
⧪ 1. lépés:
➤ Sajtó ALT+F11 a billentyűzeten. VBA ablak kinyílik.
⧪ 2. lépés:
➤ Menjen a Beillesztés fülön a VBA ablak.
➤ A rendelkezésre álló lehetőségek közül válassza a Modul .
I
⧪ 3. lépés:
➤ Egy új modulablak, az úgynevezett "Modul 1" kinyílik.
➤ Illessze be a következőket VBA kód a modulban.
Kód:
Sub Count_Rows() Dim rng As Range Set rng = Range("B4:C13") MsgBox rng.Rows.Count End Sub
Megjegyzések:
- Ez a kód egy Makró a címen. Count_Rows .
- A 3. kódsor tartalmazza a megadott tartományt " B4:C13″. Meg akarom számolni a sorok számát ebben a tartományban.
- Használd a sajátodat.
⧪ 4. lépés:
➤ Mentsük a munkafüzetet Excel makró-képes munkafüzet .
⧪ 5. lépés:
➤ Térjen vissza a munkalaphoz, és nyomja meg a ALT+F8 a billentyűzeten.
➤ A párbeszédpanel neve Makró megnyílik. Válassza ki Count_Rows ( A név a Macro) és kattintson a Fuss .
⧪ 6. lépés:
➤ Egy kis üzenőmezőben megjelenik az összes sor száma ( 10 ebben az esetben).
➤ Kattintson a címre. OK a kilépéshez.
Bővebben: Excel VBA a sorok számolásához adatokkal
2. Excel VBA kód futtatása a kijelölt tartomány sorainak számlálásához
Az előző módszerben egy adott tartomány sorainak számát számoltuk meg ( B4:C13 ).
De használhatunk egy VBA kódot, hogy megszámolja a sorok számát bármely kiválasztott tartományban, kívánságunk szerint.
A lépések ugyanazok, mint 1. módszer ( 1-6. lépés ).
⧪ Csak most 3. lépés , az előző kód helyett illessze be ezt a kódot:
Kód:
Sub Count_Selected_Rows() Dim rng As Range Set rng = Selection MsgBox rng.Rows.Count End Sub
Megjegyzés:
- Ez a kód létrehoz egy modult Count_Selected_Rows .
⧪ És a 5. lépés , a kód futtatása előtt először válasszon ki egy tartományt. Itt a teljes adathalmazomat választottam ki (anélkül, hogy a Oszlopcímek ).
⧪ Ezután nyomja meg a ALT+F8 , válasszon Count_Selected_Rows , és kattintson a Fuss .
Egy üzenőmezőben megjelenik a kiválasztott tartományban lévő sorok száma ( 10 ebben az esetben.)
3. VBA-kód beillesztése a sorok számlálásához az Excelben található kritériumokkal
Használhatunk egy VBA kódot, hogy megszámolja azon sorok számát, amelyek egy adott kritériumot teljesítenek.
Hozzunk létre például egy Makró amely megszámolja a 40-nél kevesebb jegyet kapott tanulók számát.
A lépések is mind ugyanazok, mint 1. módszer ( 1-6. lépés ).
⧪ Csak most 3. lépés , változtassa meg a VBA kódot erre:
Kód:
Sub Count_Rows_with_Criteria() Dim Count As Integer Count = 0 For i = 1 To Selection.Rows.Count If Selection.Cells(i, 1) <40 Then Count = Count + 1 End If Next i MsgBox Count End Sub
Megjegyzés:
- Ez a kód létrehoz egy modult Count_Rows_with_Criteria .
- A sorban 6 , használtuk "<40" mert ezt a kritériumot használjuk. Ön változtathatja meg az igényeinek megfelelően.
⧪ És a 5. lépés , a kód futtatása előtt válassza ki a cellák tartományát a kritériumokkal. Itt csak az oszlopot választottam ki. C ( C4:C13 ), mert a kritérium ott van.
⧪ Ezután nyomja meg a ALT+F8 , válasszon Count_Rows_with_Criteria , és kattintson a Fuss .
Egy üzenőmezőben megjelenik a feltételnek megfelelő sorok száma ( 3 ebben az esetben.)
Hasonló olvasmányok
- Excel számolja a látható sorokat (képlet és VBA-kód)
- Hogyan Excel számolja a sorokat az értékkel (8 módok)
4. Beágyazott VBA kód a sorok számlálásához egy adott szövegértékkel rendelkező sorok számolásához
Használhat egy VBA kódot, hogy megszámolja azon sorok számát, amelyek egy adott szövegértéket tartalmaznak.
Nézze meg ezt az új adathalmazt.
Megvan a Könyvrekordok a Martin Könyvesbolt nevű könyvesbolt néhány könyvét.
Hozzunk létre egy Makró amely megszámolja az adott szöveget tartalmazó könyvek számát ebből az adathalmazból.
A lépések is mind ugyanazok, mint 1. módszer ( 1-6. lépés ).
⧪ Csak most 3. lépés , változtassa meg a VBA kódot erre:
Kód:
Sub Count_Rows_with_Specific_Text() Dim Count As Integer Count = 0 Dim Text As String Text = InputBox("Enter the Text Value: ") LText = LCase(Text) For i = 1 To Selection.Rows.Count Words = Split(Selection.Cells(i, 1)) For Each j In Words LWord = LCase(j) If LText = LWord Then Count = Count + 1 End If Next j Next i MsgBox Count End Sub
Megjegyzés:
- Ez a kód létrehoz egy modult Count_Rows_with_Specific_Text_számlálás_sorok_specifikus_szöveggel .
⧪ És a 5. lépés , a kód futtatása előtt válassza ki a szöveges értékeket tartalmazó cellák tartományát. Itt a tartományt választottam ki. B4:B13 ( A könyvek neve ).
⧪ Ezután nyomja meg a ALT+F8 , válasszon Count_Rows_with_Specific_Text_számlálás_sorok_specifikus_szöveggel , és kattintson a Fuss .
⧪ An Beviteli doboz jelenik meg, amely megkéri, hogy adja meg az egyezni kívánt szövegértéket.
A példa kedvéért a következő módon adtam meg a következőt "history" .
Végül megjelenik egy üzenőmező, amely megmutatja az adott szöveget tartalmazó sorok számát ( 3 ebben az esetben.)
Bővebben: Hogyan számolhat sorokat szöveggel az Excelben
5. Sorok számlálása üres cellákkal a VBA használatával az Excelben
Végül egy olyan makrót fejlesztünk ki, amely megszámolja a sorok teljes számát, kivéve az üres cellákat egy adatkészletből.
Nézze meg ezt az új adathalmazt.
Megvan a Márkok néhány jelöltet az APEX csoport nevű vállalat felvételi tesztjén.
Sajnos azonban néhány jelölt nem tudott megjelenni a vizsgán, és az ő jegyeik helyén üres cellák vannak.
Fejlesszünk ki egy makrót, amely megszámolja a sorok teljes számát az üres cellák kivételével.
Ez azt jelenti, hogy hány jelölt jelent meg a vizsgán.
A lépések ugyanazok, mint 1. módszer ( 1-6. lépés ).
⧪ Csak most 3. lépés , írja be ezt VBA kódot a korábbi helyett:
Kód:
Sub Count_Rows_with_Blank_Cells() Dim Count As Integer Count = 0 For i = 1 To Selection.Rows.Count If Selection.Cells(i, 1) "" Then Count = Count + 1 End If Next i MsgBox Count End Sub
Megjegyzés:
- Ez a kód létrehoz egy modult Count_Rows_with_Blank_Cells_with_Blank_Cells (Sorok_üres_cellákkal_számlálása) .
⧪ In 5. lépés , a kód futtatása előtt válassza ki az üres cellákat tartalmazó cellatartományt. Itt a következő tartományt választottam ki C4:C13 ( Jelek a Tesben t).
⧪ Ezután nyomja meg a ALT+F8 , válasszon Count_Rows_with_Blank_Cells_with_Blank_Cells (Sorok_üres_cellákkal_számlálása) , és kattintson a Fuss .
Egy üzenőmezőben megjelenik a sorok teljes száma az üres cellák nélkül ( 7 ebben az esetben.)
Következtetés
Ezekkel a módszerekkel sorokat számolhatsz meg a VBA egy Excelben lévő, különböző feltételeknek megfelelő adathalmazból. Ha bármilyen problémája van, bátran kérdezzen minket.