Cum să numărați rândurile cu VBA în Excel (5 abordări)

  • Imparte Asta
Hugh West

Astăzi vă voi arăta cum se pot număra rândurile cu VBA în Excel din orice set de date. Vă voi arăta cum se pot număra rândurile dintr-un anumit interval, dintr-un interval selectat, prin potrivirea unui anumit criteriu, prin potrivirea unei anumite valori de text și prin excluderea celulelor goale.

Descărcați caietul de practică

Numărați rândurile cu VBA.xlsm

5 Metode pentru a număra rândurile cu VBA în Excel

Aici avem un set de date cu numele unor elevi și notele lor în limba engleză la o școală numită Sunflower Kindergarten.

Astăzi obiectivul nostru este de a număra numărul total de rânduri folosind un Cod VBA .

1. Utilizați codul VBA pentru a număra rândurile dintr-un anumit interval

Pasul 1:

Apăsați ALT+F11 de pe tastatură. Fereastra VBA se va deschide.

Pasul 2:

Mergeți la Introduceți în fila VBA fereastră.

Dintre opțiunile disponibile, selectați Modul .

I

Pasul 3:

O nouă fereastră de modul numită "Modulul 1" se va deschide.

Introduceți următorul text VBA în modul.

Cod:

 Sub Count_Rows() Dim rng As Range Set rng = Range("B4:C13") MsgBox rng.Rows.Count End Sub 

Note:

  • Acest cod produce un Macro numit Count_Rows .
  • The 3. linia de cod conține intervalul specificat " B4:C13″. Vreau să număr numărul de rânduri din acest interval.
  • Folosește-l pe al tău.

Pasul 4:

Salvați registrul de lucru ca Caietul de lucru cu macrouri Excel .

Pasul 5:

➤ Reveniți la foaia de lucru și apăsați ALT+F8 pe tastatură.

➤ O casetă de dialog numită Macro se va deschide. Selectați Count_Rows ( Numele Macro) și faceți clic pe Rulați .

Pasul 6:

Veți găsi o mică casetă de mesaje care arată numărul total de rânduri ( 10 în acest caz).

Faceți clic pe OK pentru a ieși.

Citește mai mult: Excel VBA pentru a număra rândurile cu date

2. Executați codul Excel VBA pentru a număra rândurile dintr-un interval selectat

În metoda anterioară, am numărat numărul de rânduri dintr-un anumit interval ( B4:C13 ).

Dar putem folosi și un VBA pentru a număra numărul de rânduri din orice interval selectat în funcție de dorința noastră.

Pașii sunt aceiași ca și în cazul Metoda 1 ( Pasul 1-6 ).

⧪ Doar în Pasul 3 , în loc de codul anterior, introduceți acest cod:

Cod:

 Sub Count_Selected_Rows() Dim rng As Range Set rng = Selection MsgBox rng.Rows.Count End Sub 

Notă:

  • Acest cod creează un modul numit Count_Selected_Rows .

⧪ Și în Pasul 5 , înainte de a rula codul, selectați mai întâi un interval. Aici am selectat întregul meu set de date (Fără Titluri de coloană ).

⧪ Apoi apăsați ALT+F8 , selectați Count_Selected_Rows , și faceți clic pe Rulați .

Veți primi o casetă de mesaj care vă va arăta numărul total de rânduri din intervalul selectat ( 10 în acest caz.)

3. Introduceți codul VBA pentru a număra rândurile cu criterii în Excel

De asemenea, putem folosi un VBA pentru a număra numărul total de rânduri care respectă un anumit criteriu.

De exemplu, să creăm un fișier Macro care va număra numărul de elevi care au obținut note mai mici de 40.

Pașii sunt, de asemenea, la fel ca Metoda 1 ( Pasul 1-6 ).

⧪ Doar în Pasul 3 , modificați VBA cod la aceasta:

Cod:

 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 

Notă:

  • Acest cod creează un modul numit Count_Rows_with_Criteria .
  • În linie 6 , am folosit "<40" pentru că acesta este criteriul pe care îl folosim. Îl schimbați în funcție de nevoile dumneavoastră.

⧪ Și în Pasul 5 , înainte de a rula codul, selectați intervalul de celule cu criteriile. Aici am selectat doar coloana C ( C4:C13 ), deoarece criteriul se află acolo.

⧪ Apoi apăsați ALT+F8 , selectați Count_Rows_with_Criteria , și faceți clic pe Rulați .

Veți primi o casetă de mesaj care vă va arăta numărul total de rânduri care îndeplinesc criteriul dumneavoastră ( 3 în acest caz.)

Lecturi similare

  • Excel Numără rândurile vizibile (Formula și codul VBA)
  • Cum numără Excel rândurile cu valoare (8 moduri)

4. Integrați codul VBA pentru a număra rândurile care au o anumită valoare de text

De asemenea, puteți utiliza un VBA pentru a număra numărul de rânduri care conțin o anumită valoare de text.

Priviți acest nou set de date.

Avem Cartea Recordurilor a unor cărți de la o librărie numită Martin Bookstore.

Să creăm un Macro care va număra numărul de cărți care au un anumit text din acest set de date.

Pașii sunt, de asemenea, la fel ca Metoda 1 ( Pasul 1-6 ).

⧪ Doar în Pasul 3 , modificați VBA cod la aceasta:

Cod:

 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 

Notă:

  • Acest cod creează un modul numit Count_Rows_with_Specific_Text .

⧪ Și în Pasul 5 , înainte de a rula codul, selectați intervalul de celule cu valorile textului. Aici am selectat intervalul B4:B13 ( Denumirea cărților ).

⧪ Apoi apăsați ALT+F8 , selectați Count_Rows_with_Specific_Text , și faceți clic pe Rulați .

⧪ Un Caseta de intrare care vă va cere să introduceți valoarea textului specific pe care doriți să o potriviți.

De dragul acestui exemplu, am introdus-o sub forma "istorie" .

În cele din urmă, veți obține o casetă de mesaj care vă va arăta numărul total de rânduri care conțin textul specific ( 3 în acest caz.)

Citește mai mult: Cum să numărați rândurile cu text în Excel

5. Numărați rândurile cu celule goale folosind VBA în Excel

În cele din urmă, vom dezvolta o macro care va număra numărul total de rânduri, excluzând celulele goale dintr-un set de date.

Priviți acest nou set de date.

Avem Marks a unor candidați la un test de recrutare al unei companii numite APEX group.

Dar, din păcate, unii candidați nu s-au putut prezenta la test și în locul notelor lor există celule goale.

Să dezvoltăm o macro care va număra numărul total de rânduri, cu excepția celulelor goale.

Adică, câți candidați s-au prezentat la test.

Pașii sunt aceiași ca și în cazul Metoda 1 ( Pasul 1-6 ).

⧪ Doar în Pasul 3 , introduceți acest lucru VBA în locul celui anterior:

Cod:

 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 

Notă:

  • Acest cod creează un modul numit Count_Rows_with_Blank_Cells .

⧪ În Pasul 5 , înainte de a rula codul, selectați intervalul de celule cu celule goale. Aici am selectat intervalul C4:C13 ( Mărcile din Tes t).

⧪ Apoi apăsați ALT+F8 , selectați Count_Rows_with_Blank_Cells , și faceți clic pe Rulați .

Veți primi o casetă de mesaj care vă va arăta numărul total de rânduri, excluzând celulele goale ( 7 în acest caz.)

Concluzie

Folosind aceste metode, puteți număra rândurile cu VBA dintr-un set de date în Excel care corespunde diferitelor condiții. Dacă aveți probleme, nu ezitați să ne întrebați.

Hugh West este un trainer și analist Excel cu o experiență de peste 10 ani în industrie. Deține o diplomă de licență în contabilitate și finanțe și un master în administrarea afacerilor. Hugh are o pasiune pentru predare și a dezvoltat o abordare unică de predare care este ușor de urmărit și de înțeles. Cunoștințele sale experte despre Excel au ajutat mii de studenți și profesioniști din întreaga lume să-și îmbunătățească abilitățile și să exceleze în cariera lor. Prin blogul său, Hugh își împărtășește cunoștințele lumii, oferind tutoriale gratuite Excel și instruire online pentru a ajuta persoanele și companiile să-și atingă întregul potențial.