Kaip skaičiuoti eilutes "Excel" programoje naudojant VBA (5 būdai)

  • Pasidalinti
Hugh West

Šiandien parodysiu, kaip galima skaičiuoti eilutes naudojant VBA Excel programoje iš bet kokio duomenų rinkinio. Parodysiu, kaip galima skaičiuoti eilutes iš konkretaus diapazono, iš pasirinkto diapazono, pagal konkretų kriterijų, pagal konkrečią teksto reikšmę ir neįtraukiant tuščių langelių.

Atsisiųsti praktikos sąsiuvinį

Eilučių skaičiavimas naudojant VBA.xlsm

5 eilutėms skaičiuoti su VBA programa "Excel" naudojami metodai

Čia pateikiame duomenų rinkinį, kuriame pateikiami kai kurių mokinių vardai ir jų žymos anglų kalba mokykloje, pavadintoje "Saulėgrąžų darželis".

Šiandien mūsų tikslas - suskaičiuoti bendrą eilučių skaičių naudojant VBA kodas .

1. Naudokite VBA kodą tam tikro diapazono eilutėms skaičiuoti

1 žingsnis:

Paspauskite ALT+F11 ant klaviatūros. VBA langas bus atidaryta.

2 žingsnis:

Eikite į Įdėkite skirtukas VBA langas.

Iš galimų parinkčių pasirinkite Modulis .

I

3 veiksmas:

Naujas modulio langas, pavadintas "1 modulis" bus atidaryta.

Įterpkite šį tekstą VBA kodas modulyje.

Kodas:

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

Pastabos:

  • Šis kodas sukuria Makro vadinamas . Count_Rows .
  • Svetainė 3. kodo eilutėje yra nurodytas intervalas " B4:C13″. Noriu suskaičiuoti šio intervalo eilučių skaičių.
  • Jūs naudojate savo.

4 veiksmas:

Išsaugokite sąsiuvinį kaip "Excel" makrokomandos įgalintas darbaknygis .

5 veiksmas:

➤ Grįžkite į darbalapį ir paspauskite ALT+F8 ant klaviatūros.

➤ Atsiveria dialogo langas Makro Atsidarys langas. Pasirinkite Count_Rows ( Pavadinimas Makro) ir spustelėkite Paleisti .

6 veiksmas:

Rasite nedidelį pranešimo langelį, kuriame bus nurodytas visų eilučių skaičius ( 10 šiuo atveju).

Spustelėkite GERAI išeiti.

Skaityti daugiau: "Excel" VBA eilutėms su duomenimis skaičiuoti

2. Paleiskite "Excel" VBA kodą, kad suskaičiuotumėte pasirinkto diapazono eilutes

Ankstesniu metodu skaičiavome tam tikro intervalo eilučių skaičių ( B4:C13 ).

Tačiau taip pat galime naudoti VBA kodą, kad būtų galima suskaičiuoti eilučių skaičių bet kuriame pasirinktame intervale pagal mūsų pageidavimą.

Visi veiksmai yra tokie patys kaip 1 metodas ( 1-6 žingsnis ).

⧪ Ką tik 3 žingsnis vietoj ankstesnio kodo įterpkite šį kodą:

Kodas:

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

Pastaba:

  • Šis kodas sukuria modulį, vadinamą Count_Selected_Rows .

⧪ Ir 5 veiksmas , prieš paleisdami kodą, pirmiausia pasirinkite intervalą. Čia aš pasirinkau visą savo duomenų rinkinį (be Stulpelių antraštės ).

⧪ Tada paspauskite ALT+F8 , pasirinkite Count_Selected_Rows ir spustelėkite Paleisti .

Bus rodomas pranešimo langas, kuriame bus nurodytas bendras pasirinkto intervalo eilučių skaičius ( 10 šiuo atveju.)

3. Įterpkite VBA kodą eilutėms su kriterijais skaičiuoti "Excel" programoje

Taip pat galime naudoti VBA kodas, skirtas skaičiuoti bendrą eilučių, atitinkančių tam tikrą kriterijų, skaičių.

Pavyzdžiui, sukurkime Makro kuris suskaičiuos mokinių, gavusių mažiau nei 40 balų, skaičių.

Visi veiksmai taip pat yra tokie patys kaip 1 metodas ( 1-6 žingsnis ).

⧪ Ką tik 3 žingsnis , pakeiskite VBA kodą į šį:

Kodas:

 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 

Pastaba:

  • Šis kodas sukuria modulį, vadinamą Count_Rows_with_Criteria .
  • Pagal liniją 6 , mes naudojome "<40" nes tokį kriterijų naudojame. Keiskite jį pagal savo poreikius.

⧪ Ir 5 veiksmas , prieš paleisdami kodą, pasirinkite ląstelių intervalą su kriterijais. Čia aš pasirinkau tik stulpelį C ( C4:C13 ), nes ten yra kriterijus.

⧪ Tada paspauskite ALT+F8 , pasirinkite Count_Rows_with_Criteria ir spustelėkite Paleisti .

Bus rodomas pranešimo langas, kuriame bus nurodytas bendras jūsų kriterijų atitinkančių eilučių skaičius ( 3 šiuo atveju.)

Panašūs skaitiniai

  • "Excel" matomų eilučių skaičiavimas (formulė ir VBA kodas)
  • Kaip "Excel" skaičiuoja eilutes su reikšme (8 būdai)

4. Įterptas VBA kodas eilutėms, turinčioms tam tikrą teksto reikšmę, skaičiuoti

Taip pat galite naudoti VBA kodas, skirtas skaičiuoti eilučių, kuriose yra tam tikra teksto reikšmė, skaičių.

Pažvelkite į šį naują duomenų rinkinį.

Mes turime Knygų įrašai kai kurių knygų iš knygyno, vadinamo Martino knygynu.

Sukurkime Makro kuris suskaičiuos knygų su konkrečiu tekstu skaičių iš šio duomenų rinkinio.

Veiksmai taip pat visi tokie patys kaip 1 metodas ( 1-6 žingsnis ).

⧪ Ką tik 3 žingsnis , pakeiskite VBA kodą į šį:

Kodas:

 Sub Count_Rows_with_Specific_Text() Dim Count As Integer Count = 0 Dim Text As String Text = InputBox ("Įveskite teksto reikšmę: ") 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 

Pastaba:

  • Šis kodas sukuria modulį, vadinamą Count_Rows_with_Specific_Text .

⧪ Ir 5 veiksmas , prieš paleisdami kodą, pasirinkite langelių su teksto reikšmėmis diapazoną. Čia aš pasirinkau diapazoną B4:B13 ( Knygų pavadinimas ).

⧪ Tada paspauskite ALT+F8 , pasirinkite Count_Rows_with_Specific_Text ir spustelėkite Paleisti .

⧪ An Įvesties langelis bus rodomas langas, kuriame bus prašoma įvesti konkrečią teksto reikšmę, kurią norite suderinti.

Šiame pavyzdyje jį įvedžiau kaip "istorija" .

Galiausiai gausite pranešimo langą, kuriame bus nurodytas bendras eilučių, kuriose yra konkretus tekstas, skaičius ( 3 šiuo atveju.)

Skaityti daugiau: Kaip skaičiuoti eilutes su tekstu "Excel" programoje

5. Eilučių su tuščiomis ląstelėmis skaičiavimas naudojant VBA programoje "Excel

Galiausiai sukursime makrokomandą, kuri suskaičiuos bendrą duomenų rinkinio eilučių skaičių, išskyrus tuščius langelius.

Pažvelkite į šį naują duomenų rinkinį.

Mes turime Žymos kai kurių kandidatų, dalyvavusių bendrovės "APEX group" įdarbinimo teste.

Deja, kai kurie kandidatai negalėjo atvykti į testą, todėl vietoje jų pažymėjimų yra tušti langeliai.

Sukurkime makrokomandą, kuri suskaičiuos bendrą eilučių skaičių, išskyrus tuščius langelius.

Tai reiškia, kiek kandidatų dalyvavo teste.

Visi veiksmai yra tokie patys kaip 1 metodas ( 1-6 žingsnis ).

⧪ Ką tik 3 žingsnis , įveskite šį VBA kodą vietoj ankstesnio:

Kodas:

 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 

Pastaba:

  • Šis kodas sukuria modulį, vadinamą Count_Rows_with_Blank_Cells .

⧪ Į 5 veiksmas , prieš paleisdami kodą, pasirinkite langelių diapazoną su tuščiais langeliais. Čia aš pasirinkau diapazoną C4:C13 ( Žymos Tes t).

⧪ Tada paspauskite ALT+F8 , pasirinkite Count_Rows_with_Blank_Cells ir spustelėkite Paleisti .

Atsivers pranešimo langas, kuriame bus nurodytas bendras eilučių skaičius, išskyrus tuščius langelius ( 7 šiuo atveju.)

Išvada

Naudodami šiuos metodus galite skaičiuoti eilutes su VBA iš "Excel" duomenų rinkinio, atitinkančio įvairias sąlygas. Ar turite kokių nors problemų? Nedvejodami kreipkitės į mus.

Hugh Westas yra labai patyręs Excel treneris ir analitikas, turintis daugiau nei 10 metų patirtį šioje srityje. Jis yra įgijęs apskaitos ir finansų bakalauro bei verslo administravimo magistro laipsnius. Hugh turi aistrą mokymui ir sukūrė unikalų mokymo metodą, kurį lengva sekti ir suprasti. Jo ekspertinės žinios apie „Excel“ padėjo tūkstančiams studentų ir specialistų visame pasaulyje tobulinti savo įgūdžius ir tobulėti savo karjeroje. Savo tinklaraštyje Hugh dalijasi savo žiniomis su pasauliu, siūlydamas nemokamus „Excel“ vadovėlius ir internetinius mokymus, kad padėtų asmenims ir įmonėms išnaudoti visą savo potencialą.