Як знайти номер рядка за допомогою VBA в Excel (4 макроси)

  • Поділитися Цим
Hugh West

Ми можемо знайти номери рядків у Excel багатьма способами, але VBA пропонує більше функцій та налаштувань, за допомогою яких ми можемо знаходити номери рядків розумними способами. Сьогодні в цій статті ми покажемо 4 корисні макроси для пошуку номера рядка в Excel за допомогою VBA.

Завантажити Практичний посібник

Ви можете завантажити безкоштовну робочу книгу Excel звідси і тренуватися самостійно.

Знайти номер рядка за допомогою VBA.xlsm

4 Макроси для знаходження номера рядка за допомогою VBA в Excel

Ознайомтеся з нашим набором даних, який ми будемо використовувати для вивчення методів, які представляють деякі продажі продавців у різних регіонах.

Макрос 1: VBA для знаходження номера рядка шляхом зміни виділення

Для початку скористаємося макросом в Excel VBA знайти номер рядка, виділивши будь-яку комірку. Це означає, що якщо просто виділити будь-яку використану комірку, то макрос миттєво покаже номер рядка. Для цього потрібно виконати такі дії зберігайте коди в аркуші а не в модулі.

Сходинки:

  • Клацніть правою кнопкою миші по заголовку аркуша і виберіть Переглянути код від контекстне меню .

  • Потім напишіть наступні коди
 Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim Rnumber As Integer Rnumber = ActiveCell.row If ActiveCell.Value "" Then MsgBox "Номер рядка виділеної комірки: " & Rnumber End If End Sub 
  • Пізніше не потрібно запускати коди, просто поверніться до свого аркуша.

Розбивка коду:

  • По-перше, я створив Приватний підводний човен процедура - Робочий аркуш_Зміна_вибору .
  • Потім оголошується змінна Rnumber як Ціле число .
  • ряд визначить номер рядка активної комірки.
  • Далі в рамках заходу відбулася презентація Якщо оператор перевірить активну комірку на порожню чи ні, а потім MsgBox покаже результат.
  • Тепер просто клацніть на будь-яку використану комірку, і вона покаже Вам номер рядка.

Читати далі: Excel VBA: Пошук рядка в стовпці та повернення номера рядка

Макрос 2: Знайти номер рядка активної комірки за допомогою VBA

Цей макрос поверне номер рядка активної комірки у вказаній комірці нашого аркуша. Отже, нам доведеться згадати ім'я аркуша та вихідну комірку в наших кодах. Тут ми використаємо Комірка D14 як наш вихідний осередок.

Сходинки:

  • Преса ALT + F11 для відкриття Вікно VBA .

  • Далі, щоб вставити новий модуль, натисніть наступну кнопку: Вставка> Модуль .

  • Після цього введіть в модулі наступні коди
 Sub Find_Row_Number_of_an_Active_Cell() Dim wSheet As Worksheet Set wSheet = Worksheets("Активна комірка") wSheet.Range("D14") = ActiveCell.row End Sub 
  • Потім поверніться до свого аркуша.

Розбивка коду:

  • Ось, Знайти_номер_рядка_з_активної_комірки() це Sub
  • На сьогоднішній день, на жаль, це не так. wSheet декларується як Робочий аркуш
  • Тоді ж відбулася Набір оператор виділить активну комірку
  • Діапазон поверне номер рядка у комірці виводу.
  • Тепер виділіть комірку і натисніть наступним чином: Розробник> Макроси .

  • Після появи в Макрос просто виберіть назву макросу і натисніть кнопку Біжи .

Незабаром після цього ви побачите, що номер рядка вибраної комірки повертається в нашу вихідну комірку.

Ви можете бачити, що B8 вибрано комірку, тому вихідним результатом є 8.

Читати далі: Як отримати номер рядка поточної комірки в Excel (4 швидких способи)

Схожі читання

  • Як збільшити номер рядка у формулі Excel (6 зручних способів)
  • Отримайте номер рядка з діапазону за допомогою Excel VBA (9 прикладів)
  • Як повернути номер рядка збігу комірок в Excel (7 способів)
  • Як отримати номер рядка за значенням комірки в Excel (5 способів)

Макрос 3: VBA для знаходження номера рядка за відповідністю значення

Якщо ви хочете знайти номер рядка шляхом пошуку значення, то цей макрос для вас. Вам потрібно буде вказати шукане значення і номер стовпця в кодах, як показано на зображенні нижче.

Сходинки:

  • Виконати перші два кроки з попереднього способу вставити новий модуль.
  • Потім вставте в нього наступні коди
 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 & "Значення, що збігається, міститься в рядку: "& fCell.row") Else MsgBox (Matching_Value & "Значення, що збігається, не знайдено") EndIf End Sub 
  • Після цього поверніться до свого аркуша.

Розбивка коду:

  • Тут функція Find_Row_Matching_a_Value() є функцією Sub
  • І wBook і wSheet заявляються як Робочий аркуш і fCell декларується як Діапазон .
  • На сьогоднішній день, на жаль, це не так. wBook і wSheet встановлюються для ActiveWorkbook і ActiveSheet .
  • Const буде введеним значенням для пошуку.
  • До зустрічі, Діапазон буде здійснювати пошук значення по згаданому стовпчику.
  • Далі, в рамках заходу, відбулася презентація Якщо і Інакше оператор виведе результат з використанням MsgBox .
  • До зустрічі, виконати 5-й крок з попереднього способу для відкриття Макрос діалогове вікно.
  • Виберіть пункт назва макросу і просто натисніть Біжи .

Незабаром у вікні сповіщення з'явиться номер рядка.

Читати далі: Excel VBA: повернення номера рядка зі значенням (5 підходящих способів)

Макрос 4: Кнопка для пошуку номера рядка

У нашому останньому методі ми покажемо вам найрозумніший метод визначення номера рядка за допомогою VBA Зробимо кнопку і пов'яжемо з нею макрос, при натисканні на який відкриється вікно введення, де ми можемо ввести шукане значення, для якого нам потрібен номер рядка. Попередній макрос міг шукати по вказаному стовпчику, а цей макрос може шукати по будь-якому стовпчику, в будь-якому місці аркуша.

Сходинки:

  • Знову виконати перші два кроки з другого способу вставити новий модуль.
  • Далі вставити в нього наступні коди
 Sub Find_Row_Number() Dim mValue As String Dim mrrow As Range mValue = InputBox("Вставити значення") Set mrrow = Cells.Find(What:=mValue, LookIn:=xlFormulas, LookAt _ :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _ False, SearchFormat:=False) If mrrow Is Nothing Then MsgBox ("Немає збігу") Else MsgBox (mrrow.row) End If End Sub 
  • Потім поверніться до свого аркуша.

Розбивка коду:

  • По-перше, я створив Sub procedure Find_Row_Number().
  • Далі оголошуються дві змінні, мЗначення як Рядок і ряд як Діапазон .
  • Потім використовували InputBox щоб вставити значення.
  • Пізніше, в ході зустрічі, яка відбулася в Києві, було підписано Набір і Якщо знайде номер рядка, якщо він не пустий.
  • Насамкінець, в рамках проекту MsgBox покаже результат.
  • Пізніше натисніть Розробник> Вставка а потім виберіть пункт Кнопка команда з боку Розділ "Елементи управління формою .

  • Тоді ви отримаєте знак плюс за допомогою курсору перетягніть в будь-яке місце, натиснувши на аркуш відповідно до бажаного розміру, а потім відпустіть клавішу.

  • Після відпускання миші на екрані з'явиться Призначити макрос діалогове вікно відкриється автоматично.
  • Виберіть пункт назва макросу як зазначено в кодексах.
  • Тоді просто натисніть ГАРАЗД. .

  • Далі натискаємо правою кнопкою миші на кнопку та обираємо Редагувати текст для редагування назви кнопки.

  • Введіть назву кнопки, потім клацніть в будь-якому місці за межами кнопки і назва буде змінена.

  • Тепер натисніть на кнопку, відкриється вікно для введення даних.
  • Нарешті, просто вставте значення пошуку і натисніть ГАРАЗД. .

Тепер подивіться, він показує номер рядка, в якому знаходиться знайдене значення.

Читати далі: Пошук рядка у стовпці та повернення номера рядка в Excel (7 способів)

Висновок

Сподіваюся, описані вище процедури будуть достатньо хороші, щоб знайти номер рядка в Excel за допомогою VBA. Не соромтеся задавати будь-які питання в коментарях і, будь ласка, дайте мені зворотний зв'язок. Відвідайте ExcelWIKI, щоб дізнатися більше.

Г’ю Вест — досвідчений тренер і аналітик Excel із понад 10-річним досвідом роботи в галузі. Він має ступінь бакалавра з бухгалтерського обліку та фінансів і ступінь магістра з ділового адміністрування. Г’ю має пристрасть до викладання та розробив унікальний підхід до викладання, який легко зрозуміти та дотримуватися. Його експертне знання Excel допомогло тисячам студентів і професіоналів у всьому світі вдосконалити свої навички та досягти успіху в кар’єрі. У своєму блозі Г’ю ділиться своїми знаннями зі світом, пропонуючи безкоштовні навчальні посібники з Excel та онлайн-навчання, щоб допомогти окремим особам і компаніям повністю розкрити свій потенціал.