Как найти первую или последнюю непустую ячейку в строке или столбце?
В повседневной работе с Excel часто встречаются наборы данных, где лишь часть ячеек заполнена, а остальные — пусты. Зачастую необходимо быстро найти первую или последнюю непустую ячейку в определённой строке или столбце. Хотя это просто при небольшом объёме данных, в длинных строках или столбцах ручной поиск становится неэффективным, трудоёмким и чреват ошибками.
Существует несколько практичных способов эффективно получить значение первой или последней непустой ячейки в строке или столбце — это поможет вам автоматизировать задачу и сэкономить драгоценное время. Ниже представлены решения на основе формул и другие практичные методы, подходящие для различных реальных ситуаций, включая работу с динамическими диапазонами и крупными наборами данных.
Получение первой непустой ячейки в строке или столбце с помощью формулы
Получение последней непустой ячейки в строке или столбце с помощью формулы
Получение значения первой или последней непустой ячейки с помощью макроса VBA
Поиск первой или последней непустой ячейки с использованием функции фильтрации Excel
Получение первой непустой ячейки в строке или столбце с помощью формулы
Чтобы извлечь первую ячейку с данными из строки или столбца, используйте комбинацию функций ИНДЕКС и ПОИСКПОЗ. Этот метод идеален, когда нужно программно получить значение, сохранив динамичность листа при изменении исходных данных. Вот как это сделать:
1. В пустой ячейке рядом с вашим диапазоном данных введите следующую формулу:
=INDEX(A1:A13,MATCH(TRUE,INDEX((A1:A13<,>,0),0),0)) Например, если ваши данные находятся в ячейках A1–A13, эта формула вернёт первую непустую ячейку со значением, отличным от нуля. Пример ниже:

2. Нажмите клавишу Enter. Отобразится значение первой непустой ячейки в диапазоне (или отличной от нуля — в зависимости от логики формулы), как показано ниже:

Примечания и советы:
- В приведённой выше формуле вы можете заменить A1:A13на ссылку на любой столбец или строку (например,)1:1 для строки 1 или B2:M2 для части строки).
- Этот метод надёжно работает с одной строкой или одним столбцом. Для таблиц или диапазонов с множественным выделением рекомендуется применять формулу к каждой строке или каждому столбцу отдельно.
- Если формула возвращает ошибку ()#N/A), убедитесь, что ваш диапазон содержит хотя бы одну непустую ячейку со значением, отличным от нуля.
- Помните: чтобы игнорировать только пустые ячейки, а не нули, замените
0на""для истинно пустых ячеек («»).

Раскройте магию Excel с помощью KUTOOLS AI
- Интеллектуальное выполнение: Выполняйте операции с ячейками, анализируйте данные и создавайте диаграммы — всё это доступно через простые команды.
- Пользовательские формулы: создавайте индивидуальные формулы для оптимизации рабочих процессов.
- Программирование на VBA: Пишите и внедряйте код VBA легко и без усилий.
- Анализ формул: Легко разбирайтесь даже в самых сложных формулах.
- Перевод текста: Ломайте языковые барьеры прямо в ваших таблицах.
Получение последней непустой ячейки в строке или столбце с помощью формулы
Чтобы получить значение из последней непустой ячейки заданного диапазона, воспользуйтесь эффективным и простым решением — формулой на основе массива с функцией ПРОСМОТР. Это особенно полезно для автоматического определения последней записи в списке или сводной таблице при работе с динамическими или постоянно изменяющимися данными.
1. Введите следующую формулу в пустую ячейку рядом с нужным диапазоном:
=LOOKUP(2,1/(A1:A13<,>,""),A1:A13) Эта формула просматривает ограниченный диапазон и возвращает значение последней непустой ячейки. Например, при использовании диапазона A1:A13:

2. После нажатия клавиши Enter Excel вычислит и отобразит значение из последней непустой ячейки:
Примечания и рекомендации:
- Вы можете использовать эту формулу с любым отдельным столбцом или строкой ()B1:B20, F8:F30 или 2:2 и т.д.). При необходимости обновите ссылку на диапазон.
- Если ваши данные содержат нули, которые вы хотите игнорировать, замените
A1:A13""наA1:A130, но убедитесь, что различие между действительно пустыми ячейками и нулями соответствует вашим целям. - Этот подход идеально подходит для простых диапазонов. Для диапазонов, содержащих формулы, возвращающие «» (пустой текст), данная формула считает такие ячейки пустыми.
- Если все ячейки окажутся пустыми, формула вернёт ошибку #N/A.
Получение значения первой или последней непустой ячейки с помощью макроса VBA
Пользователям, работающим с большими наборами данных или стремящимся автоматизировать повторяющиеся задачи, простой макрос VBA может существенно упростить процесс — особенно когда диапазоны изменяются или охватывают множество строк и столбцов. В отличие от формул, VBA выполняет нужные действия по запросу, например поиск первой или последней непустой ячейки, что делает его идеальным решением для многократного применения к разным диапазонам.
1. Откройте редактор VBA через меню Разработчик > Visual Basic. В открывшемся окне VBA выберите Вставка > Модуль и вставьте одну из приведённых ниже процедур в окно модуля:
Макрос для поиска первойнепустой ячейки в Выберите диапазон:
Sub FindFirstNonBlankCell()
Dim rng As Range
Dim cell As Range
Dim firstValue As Variant
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set rng = Application.Selection
Set rng = Application.InputBox("Select range", xTitleId, rng.Address, Type:=8)
firstValue = ""
For Each cell In rng
If cell.Value <> "" Then
firstValue = cell.Value
Exit For
End If
Next cell
If firstValue <> "" Then
MsgBox "The first non blank cell value is: " & firstValue, vbInformation, xTitleId
Else
MsgBox "No non blank cells found.", vbExclamation, xTitleId
End If
End Sub Аналогично, вот код для поиска последнейнепустой ячейки:
Sub FindLastNonBlankCell()
Dim rng As Range
Dim cell As Range
Dim lastValue As Variant
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set rng = Application.Selection
Set rng = Application.InputBox("Select range", xTitleId, rng.Address, Type:=8)
lastValue = ""
For Each cell In rng
If cell.Value <> "" Then
lastValue = cell.Value
End If
Next cell
If lastValue <> "" Then
MsgBox "The last non blank cell value is: " & lastValue, vbInformation, xTitleId
Else
MsgBox "No non blank cells found.", vbExclamation, xTitleId
End If
End Sub 2. Чтобы выполнить код, нажмите кнопку Выполнить в редакторе VBA. Вам будет предложено выбрать диапазон для поиска непустых ячеек. После выбора и подтверждения в диалоговом окне отобразится значение первой или последней непустой ячейки — в зависимости от того, какой макрос вы запустили.
in the VBA editor. You will be prompted to select the target range to search for non blank cells. After making your selection and confirming, a dialog box will display either the first or last non blank cell value depending on which macro you run.
- Эти макросы универсальны и отлично работают как со строками, так и со столбцами — независимо от объёма данных.
- VBA позволяет автоматизировать операции и выполнять их многократно, что делает его идеальным решением для частых или масштабных задач.
- Обязательно сохраните книгу перед запуском макросов и, при необходимости, включите их. Всегда тестируйте макросы на образце данных, чтобы убедиться в их точности, прежде чем применять к важной информации.
Поиск первой или последней непустой ячейки с использованием функции фильтрации Excel
Для пользователей, которым нужно быстро визуально определить непустые значения — особенно в очень длинных столбцах — встроенная функция Фильтр в Excel мгновенно выделяет непустые записи. Хотя этот метод не возвращает значение автоматически в другую ячейку, он чрезвычайно эффективен для проверки и навигации при анализе данных.
Вот как визуально найти первую или последнюю непустую ячейку с помощью фильтрации:
- Выделите столбец или строку с вашими данными. Для удобства фильтрации можно выбрать весь столбец целиком — например, щёлкнув по его заголовочной букве.
- Перейдите на вкладку Данные, затем выберите Фильтр.
- Щёлкните по маленькой стрелке фильтра в заголовке вашего диапазона или таблицы.
- Снимите флажок напротив пункта (Пустые), чтобы отображались только заполненные ячейки.
- После применения фильтра первым видимым значением в верхней части столбца станет первая непустая ячейка — прокрутите вниз, чтобы увидеть последнюю.
Преимущества: Метод фильтрации работает быстро, не требует формул и отлично справляется даже со столбцами, содержащими тысячи строк.
Недостатки: Решение носит исключительно визуальный характер — оно не выводит результат в ячейку и не поддерживает автоматизацию, как формулы или VBA. Тем не менее, оно идеально подходит для ручной проверки, анализа и интерактивного изучения данных.
Устранение неполадок и рекомендации:
Если фильтр, кажется, не работает, убедитесь, что вы не выделили только часть данных — это может привести к некорректному применению фильтрации. Чтобы восстановить полный вид набора данных, после завершения работы удалите фильтры с помощью команды Данные > Очистить.
Лучшие инструменты повышения продуктивности в Office
Раскройте весь потенциал Excel с помощью Kutools для Excel и ощутите эффективность как никогда раньше.Kutools для Excel предлагает более 300 расширенных функций для повышения продуктивности и Экономия времени.Нажмите здесь, чтобы получить нужную Вам функцию…
Office Tab добавляет в Office вкладки и значительно упрощает Вашу работу
- Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Открывайте и создавайте несколько документов во вкладках одного окна — вместо того чтобы использовать отдельные окна.
- Повышает вашу продуктивность на 50 % и экономит сотни кликов мышью каждый день!
Все надстройки Kutools — один установщик
Kutools for Office — набор надстроек для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro, идеально подходящий командам, работающим с разными приложениями Office.
- Единый комплект— надстройки для Excel, Word, Outlook и PowerPoint + Office Tab Pro
- Один установщик, одна лицензия— настройка занимает считанные минуты (готово для MSI)
- Лучше работать вместе— оптимизированная продуктивность во всех приложениях Office
- 30-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
- Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек