Cuprins
Putem găsi numere de rânduri în Excel folosind mai multe moduri, dar VBA oferă mai multe caracteristici și personalizări. Prin care putem găsi numere de rânduri în moduri inteligente. Astăzi, acest articol va arăta 4 macro-uri utile pentru a găsi numărul de rânduri în Excel folosind VBA.
Descărcați caietul de practică
Puteți descărca gratuit caietul de lucru Excel de aici și puteți exersa independent.
Găsiți numărul rândului utilizând VBA.xlsm4 Macro pentru a găsi numărul de rânduri utilizând VBA în Excel
Faceți cunoștință cu setul nostru de date pe care îl vom folosi pentru a explora metodele care reprezintă unele vânzări ale vânzătorilor în diferite regiuni.
Macro 1: VBA pentru a găsi numărul rândului prin schimbarea selecției
În primul rând, vom folosi o macro în Excel VBA pentru a găsi numărul rândului prin selectarea oricărei celule. Aceasta înseamnă că, dacă selectați orice celulă utilizată, macroul va afișa instantaneu numărul rândului. Pentru aceasta, va trebui să păstrați codurile într-o foaie , nu în modul.
Pași:
- Faceți clic dreapta pe titlul foii și selectați Vezi codul de la meniul contextual .
- Apoi scrieți următoarele coduri.
Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim Rnumber As Integer Rnumber = ActiveCell.row If ActiveCell.Value "" Then MsgBox "Numărul de rând al celulei pe care s-a făcut clic este: " & Rnumber End If End Sub
- Mai târziu, nu este nevoie să rulați codurile, ci doar să vă întoarceți la foaia dvs.
Descompunerea codului:
- În primul rând, am creat un fișier Private Sub procedura - Schimbare_Selecție_foaie_de_lucru .
- Apoi a declarat o variabilă Rnumber ca Număr întreg .
- rând va determina numărul de rând al celulei active.
- În continuare, se va trece la Dacă va verifica dacă celula activă este goală sau nu, iar apoi MsgBox va afișa rezultatul.
- Acum, faceți clic pe orice celulă utilizată și vi se va afișa numărul rândului.
Citește mai mult: Excel VBA: Găsiți un șir de caractere în coloană și returnați numărul rândului
Macro 2: Găsiți numărul de rând al unei celule active utilizând VBA
Această macro va returna numărul de rând al unei celule active dintr-o celulă specificată din foaia noastră. Așadar, va trebui să menționăm numele foii de calcul și celula de ieșire în codurile noastre. Aici, vom folosi Celula D14 ca celulă de ieșire.
Pași:
- Presa ALT + F11 pentru a deschide fereastra Fereastra VBA .
- În continuare, faceți clic după cum urmează pentru a introduce un nou modul: Inserare> Modul .
- După aceea, introduceți următoarele coduri în modulul-
Sub Find_Row_Number_of_an_Active_Cell() Dim wSheet As Worksheet Set wSheet = Worksheets("Active Cell") wSheet.Range("D14") = ActiveCell.row End Sub
- Apoi întoarceți-vă la foaia dumneavoastră.
Descompunerea codului:
- Aici, Găsește_numărul_de_ rând_din_o_celulă_activă() este Sub
- The wSheet este declarată ca un Fișa de lucru
- Apoi, se va face Set instrucțiunea va selecta celula activă
- Gama va returna numărul rândului din celula de ieșire.
- Acum selectați o celulă și faceți clic după cum urmează: Dezvoltator> Macros .
- După ce a apărut în Macro caseta de dialog, trebuie doar să selectați numele macro și să apăsați Rulați .
La scurt timp după aceea, veți vedea că numărul de rând al celulei selectate este returnat în celula de ieșire.
Puteți vedea că B8 a fost selectată celula, deci 8 este rezultatul.
Citește mai mult: Cum să obțineți numărul de rând al celulei curente în Excel (4 moduri rapide)
Lecturi similare
- Cum să creșteți numărul de rând în formula Excel (6 moduri practice)
- Obțineți numărul rândului din interval cu Excel VBA (9 Exemple)
- Cum să returnați numărul de rând al unei celule de potrivire în Excel (7 metode)
- Cum să obțineți numărul de rând din valoarea celulei în Excel (5 metode)
Macro 3: VBA pentru a găsi numărul rândului prin potrivirea unei valori
Dacă doriți să găsiți numărul rândului prin căutarea unei valori, atunci această macro este pentru dumneavoastră. Va trebui să menționați valoarea de căutare și numărul coloanei în coduri, așa cum se arată în imaginea de mai jos.
Pași:
- Urmați primii doi pași din metoda anterioară pentru a introduce un nou modul.
- Apoi, inserați următoarele coduri în el -
Sub Find_Row_Matching_a_Value() Dim wBook As Workbook Dim wSheet As Worksheet Dim fCell As Range Set wBook = ActiveWorkbook Set wSheet = ActiveSheet Const Matching_Value As String = "Luka" Set fCell = wSheet.Range("B:B").Find(What:=Matching_Value) If Not fCell Is Nothing Then MsgBox (Matching_Value & " este localizat în rândul: " & fCell.row) Else MsgBox (Matching_Value & " Not matched") EndIf End Sub
- După aceea, întoarceți-vă la foaia dvs.
Descompunerea codului:
- Aici, Find_Row_Matching_Matching_a_Value() este Sub
- Și wBook și wSheet sunt declarate ca Fișa de lucru și fCell este declarat ca Gama .
- The wBook și wSheet sunt stabilite pentru ActiveWorkbook și ActiveSheet .
- Const va primi date de intrare pentru valoarea de căutare.
- Mai târziu, Gama va căuta valoarea prin coloana menționată.
- În continuare, se va trece la Dacă și Altfel va afișa rezultatul folosind MsgBox .
- Mai târziu, urmați pasul 5 din metoda anterioară pentru a deschide fereastra Macro caseta de dialog.
- Selectați nume macro și doar apăsați Rulați .
În curând, o casetă de notificare vă va arăta numărul rândului.
Citește mai mult: Excel VBA: Returnați numărul de rând al valorii (5 metode adecvate)
Macro 4: Butonul pentru a găsi numărul rândului
În ultima noastră metodă, vă vom arăta cea mai inteligentă metodă de a determina un număr de rând folosind VBA Vom crea un buton și îi vom atribui o macro. Când vom face clic pe buton, se va deschide o casetă de introducere în care putem introduce valoarea de căutare pentru care dorim numărul rândului. Macroul anterior putea căuta printr-o coloană menționată, dar acest macro poate căuta orice coloană, oriunde în foaie.
Pași:
- Urmați din nou primii doi pași din a doua metodă pentru a introduce un nou modul.
- În continuare, introduceți următoarele coduri în el-
Sub Find_Row_Number() Dim mValue As String Dim mrrow As Range mValue = InputBox("Insert a value") Set mrrow = Cells.Find(What:=mValue, LookIn:=xlFormulas, LookAt _ :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _ False, SearchFormat:=False) If mrrow Is Nothing Then MsgBox ("No Match") Else MsgBox (mrrow.row) End If End Sub
- Apoi întoarceți-vă la foaia dumneavoastră.
Descompunerea codului:
- În primul rând, am creat un fișier Sub procedura Find_Row_Number().
- Apoi a declarat două variabile, mValue ca Șir de caractere și rând ca Gama .
- Apoi a folosit InputBox pentru a introduce o valoare.
- Mai târziu, a fost Set și Dacă va găsi numărul rândului, dacă acesta nu este gol.
- În cele din urmă, se va MsgBox va afișa rezultatul.
- Ulterior, faceți clic pe Dezvoltator> Introduceți și apoi selectați Buton comanda de la Secțiunea Controale formular .
- Apoi veți primi un semnul plus cu cursorul, trageți oriunde făcând clic pe foaia dvs. în funcție de dimensiunea dorită și apoi eliberați clicul.
- După ce se eliberează butonul mouse-ului, se va afișa Atribuire macro se va deschide automat caseta de dialog.
- Selectați nume macro așa cum se menționează în coduri.
- Apoi, trebuie doar să apăsați OK .
- Apoi, faceți clic dreapta pe buton și selectați Editare text pentru a edita numele butonului.
- Introduceți numele butonului, apoi faceți clic oriunde în afara butonului și numele va fi schimbat.
- Acum faceți clic pe buton și se va deschide o casetă de introducere a datelor.
- În cele din urmă, trebuie doar să introduceți valoarea de căutare și să apăsați OK .
Acum, uitați-vă, se afișează numărul rândului cu valoarea corespunzătoare.
Citește mai mult: Găsiți șirul de caractere în coloană și returnați numărul rândului în Excel (7 moduri)
Concluzie
Asta e tot pentru articol. Sper că procedurile descrise mai sus vor fi suficient de bune pentru a găsi numărul de rând în Excel folosind VBA. Simțiți-vă liber să puneți orice întrebare în secțiunea de comentarii și vă rog să-mi oferiți feedback. Vizitați ExcelWIKI pentru a explora mai mult.