VBA Найти последнюю строку в Excel (5 способов)

  • Поделись Этим
Hugh West

В VBA вы можете использовать различные методы для поиска последней строки. В этой статье я собираюсь объяснить различные методы VBA для поиска последней строки в Excel.

Чтобы сделать это объяснение наглядным, я собираюсь использовать пример набора данных. В наборе данных есть 4 столбца, представляющие информацию о продажах. Эти столбцы следующие Торговый агент, регион, продукт, и Цена .

Скачать Для практики

VBA Найти последнюю строку.xlsm

Способы VBA Найти последнюю строку в Excel

1. Использование SpecialCells для поиска последней строки

Вы можете использовать SpecialCells метод для поиска последней строки с помощью VBA .

Сначала откройте Разработчик вкладка>>, затем выберите Visual Basic

Новое окно Microsoft Visual Basic для приложений появится.

Теперь из Вставка >> выбрать Модуль

A Модуль будет открыта.

Затем напишите следующий код в Модуль .

 Sub LastRow_SpecialCells() Dim LastRow As Long LastRow = Range("A:A").SpecialCells(xlCellTypeLastCell).Row MsgBox LastRow End Sub 

Здесь я создал подпроцедуру под названием LastRow_SpecialCells , где a Длинный тип переменной LastRow было объявлено.

Затем определите переменную с помощью Range.SpecialCells Здесь я использовал метод column A ( A:A ) как диапазон. Обеспечивается xlCellTypeLastCell в качестве параметра типа SpecialCells это вернет последнюю ячейку диапазона (в данном случае из столбца A ).

Я использовал окно сообщения, чтобы показать результат.

После этого, Сохранить код и вернуться к рабочему листу.

Снова откройте Посмотреть вкладка>> от Макросы >> выбрать Просмотр макросов

Затем, а диалоговое окно появится.

Теперь из Имя макроса выбрать LastRow_SpecialCells также выберите рабочую книгу внутри Макросы в .

Наконец-то, Запускайте выбранный Макро .

Таким образом, появится окно сообщения с номером последней строки.

2. Использование Rows.Count для непустых ячеек

Вы можете использовать Rows.Count метод для поиска последней строки с помощью VBA .

Теперь откройте Разработчик вкладка>>, затем выберите Visual Basic

Новое окно Microsoft Visual Basic для приложений появится.

Теперь из Вставка >> выбрать Модуль

A Модуль будет открыта.

Затем напишите следующий код в Модуль .

 Sub LastRow_NonEmpty() Dim LastRow As Long LastRow = Cells(Rows.Count, 1).End(xlUp).Row MsgBox LastRow End Sub 

Здесь я создал подпроцедуру под названием LastRow_NonEmpty, где в качестве параметра выступает Длинный тип переменной LastRow было объявлено.

Сейчас, CELLS(Rows.Count, 1) подсчитает, сколько строк в первом столбце. Затем используется End(xlUp).Row теперь это позволит найти последнюю использованную строку в диапазоне Excel.

В конце я использовал окно сообщения, чтобы показать результат.

Тогда, Сохранить код и вернуться к рабочему листу.

Здесь откройте Посмотреть вкладка>> от Макросы >> выбрать Просмотр макросов

Теперь диалоговое окно появится.

Затем, из Имя макроса выбрать LastRow_NonEmpty также выберите рабочую книгу внутри Макросы в .

Наконец-то, Запускайте выбранный Макро .

Таким образом, появится окно сообщения с номером последней строки.

3. Использование Rows.Count для любого выбранного столбца

Используя любой выбранный столбец в VBA, вы можете найти последний ряд.

Сначала откройте Разработчик вкладка>>, затем выберите Visual Basic

Новое окно Microsoft Visual Basic для приложений появится.

Теперь из Вставка >> выбрать Модуль

A Модуль будет открыта.

Затем напишите следующий код в Модуль .

 Sub LastRow_AnyColumn() Dim LastRow As Long LastRow = Range("B" & Rows.Count).End(xlUp).Row MsgBox LastRow End Sub 

Здесь я создал подпроцедуру под названием LastRow_AnyColumn, где a Длинный тип переменной LastRow было объявлено.

Затем, в Диапазон учитывая колонку B в качестве параметра, а также Rows.Count подсчитает, сколько строк в данном столбце. B . Далее, используется End(xlup). Row которая найдет последнюю использованную строку в диапазоне Excel.

Наконец, я использовал окно сообщения, чтобы показать результат.

Следующий, Сохранить код и вернуться к рабочему листу.

Затем откройте Посмотреть вкладка>> от Макросы >> выбрать Просмотр макросов

Здесь диалоговое окно появится.

Теперь из Имя макроса выбрать ПоследняяСтрока_КаждыйСтолбец также выберите рабочую книгу внутри Макросы в .

Наконец-то, Запускайте выбранный Макро .

Таким образом, появится окно сообщения с номером последней строки.

Похожие чтения:

  • VBA Найти в столбце в Excel (7 подходов)
  • Поиск и замена с помощью VBA (11 способов)
  • Поиск точного совпадения с помощью VBA в Excel (5 способов)
  • Как найти строку с помощью VBA в Excel (8 примеров)

4. Использование UsedRange для поиска последней строки

Вы можете использовать UsedRange свойство рабочего листа, чтобы найти последнюю строку, используя VBA .

Теперь откройте Разработчик вкладка>>, затем выберите Visual Basic

Затем, в новом окне Microsoft Visual Basic для приложений появится.

Теперь из Вставка >> выбрать Модуль

A Модуль будет открыта.

Затем напишите следующий код в Модуль .

 Sub LastRow_UsedRange() Dim LastRow As Long LastRow = ActiveSheet.UsedRange.Rows(ActiveSheet.UsedRange.Rows.Count).Row MsgBox "Last Row: " & LastRow End Sub 

Здесь я создал подпроцедуру под названием LastRow_UsedRange, где a Длинный тип переменной LastRow было объявлено.

Затем определите переменную с помощью ActiveSheet.UsedRange.Rows также предусмотрен метод ActiveSheet.UsedRange.Rows.Count как параметр ActiveSheet.UsedRange.Rows это вернет последнюю строку.

Я использовал окно сообщения, чтобы показать результат.

Сейчас, Сохранить код и вернуться к рабочему листу.

Затем откройте Посмотреть вкладка>> от Макросы >> выбрать Просмотр макросов

Далее диалоговое окно появится.

Затем, из Имя макроса выбрать LastRow_UsedRange также выберите рабочую книгу внутри Макросы в .

Наконец-то, Запускайте выбранный Макро .

Таким образом, появится окно сообщения с номером последней строки.

5. Использование Range.Find для поиска последней строки

Вы можете использовать Диапазон.Найти метод для поиска последней строки с помощью VBA .

Теперь откройте Разработчик вкладка>>, затем выберите Visual Basic

Здесь открывается новое окно Microsoft Visual Basic для приложений появится.

Теперь из Вставка >> выбрать Модуль

A Модуль будет открыта.

Затем напишите следующий код в Модуль .

 Sub Range_Find_Method() Dim LastRow As Long On Error Resume Next LastRow = Cells.Find(What:="*", _ After:=Range("A1"), _ LookAt:=xlPart, _ LookIn:=xlFormulas, _ SearchOrder:=xlByRows, _ SearchDirection:=xlPrevious, _ MatchCase:=False).Row On Error GoTo 0 MsgBox "Last Row: " & LastRow End Sub 

Здесь я создал подпроцедуру под названием Range_Find_Method, где a Длинный тип переменной LastRow было объявлено.

Затем определите переменную с помощью Cells.Find метод. Здесь объявлено 7 параметров. В Что я использовал параметр ("*"), который найдет первую непустую ячейку. Given A1 как диапазон в После параметр для запуска. В LookAt предоставленный параметр xlPart чтобы просмотреть любую часть текста внутри ячейки.

LookIn:=xlFormulas параметр будет искать формулы, если они есть. SearchOrder:=xlByRows параметр будет перемещаться справа налево, а также пройдёт по каждой строке, пока не найдёт непустую ячейку.

MatchCase:=False параметр скажет Найти не учитывать заглавные и строчные буквы. Когда найдена незаполненная строка, он останавливается и возвращает номер строки.

Я использовал окно сообщения, чтобы показать результат.

Сейчас, Сохранить код и вернитесь на рабочий лист.

Здесь откройте Посмотреть вкладка>> от Макросы >> выбрать Просмотр макросов

Теперь диалоговое окно появится.

Теперь из Имя макроса выбрать Метод поиска диапазона также выберите рабочий лист внутри Макросы в .

Наконец-то, Запускайте выбранный Макро .

Таким образом, появится окно сообщения с номером последней строки.

Заключение

В этой статье я объяснил 5 способов, как VBA Вы можете использовать любой из этих методов, чтобы найти последнюю строку в Excel. Если у вас возникли какие-либо неясности или вопросы относительно этих методов, вы можете прокомментировать их ниже.

Хью Уэст — опытный тренер и аналитик Excel с более чем 10-летним опытом работы в отрасли. Он имеет степень бакалавра в области бухгалтерского учета и финансов и степень магистра делового администрирования. Хью страстно любит преподавать и разработал уникальный подход к обучению, которому легко следовать и который легко понять. Его экспертные знания Excel помогли тысячам студентов и специалистов по всему миру улучшить свои навыки и преуспеть в своей карьере. В своем блоге Хью делится своими знаниями со всем миром, предлагая бесплатные учебные пособия по Excel и онлайн-обучение, чтобы помочь отдельным лицам и компаниям полностью раскрыть свой потенциал.