Note: The other languages of the website are Google-translated. Back to English
Войти  \/ 
x
or
x
Регистрация  \/ 
x

or

Как перебирать строки до пустого в столбце Excel?

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

Прокрутите строки до пустого с помощью VBA


стрелка синий правый пузырь Прокрутите строки до пустого с помощью VBA

1. Нажмите Alt + F11 ключи для включения Microsoft Visual Basic для приложений окно.

2. Нажмите Вставить > модульи вставьте приведенный ниже код в пустой скрипт.

VBA: цикл до пустого

Sub Test1()
'UpdatebyExtendoffice20161222
      Dim x As Integer
      Application.ScreenUpdating = False
      ' Set numrows = number of rows of data.
      NumRows = Range("A1", Range("A1").End(xlDown)).Rows.Count
      ' Select cell a1.
      Range("A1").Select
      ' Establish "For" loop to loop "numrows" number of times.
      For x = 1 To NumRows
         ' Insert your code here.
         ' Selects cell down 1 row from active cell.
         ActiveCell.Offset(1, 0).Select
      Next
      Application.ScreenUpdating = True
End Sub

цикл документов до пустого 1

В коде A1 - это первая ячейка, из которой вы хотите выполнить цикл, вы можете изменить ее по своему усмотрению.

3. Нажмите F5 чтобы начать цикл по столбцу, курсор остановится на первой встреченной пустой ячейке.
цикл документов до пустого 2

Внимание: Если вы хотите перебирать данные до тех пор, пока не встретите сплошные пустые ячейки, вы можете использовать этот код макроса.

Sub LoopThroughUntilBlanks()
'UpdatebyExtendoffice20161222
      ' Select cell A2, *first line of data*.
      Dim xrg As Range
      On Error Resume Next
      Set xrg = Application.InputBox _
        (Prompt:="first cell select..", Title:="Kutools for Excel", Type:=8)
      xrg.Cells(1, 1).Select
      ' Set Do loop to stop when two consecutive empty cells are reached.
      Application.ScreenUpdating = False
      Do Until IsEmpty(ActiveCell) And IsEmpty(ActiveCell.Offset(1, 0))
         ' Insert your code here.
         '
         ' Step down 2 rows from present location.
         ActiveCell.Offset(2, 0).Select
      Loop
      Application.ScreenUpdating = False
End Sub

Затем вам нужно выбрать первую ячейку, из которой вы хотите выполнить цикл в Kutools for Excel диалоговое окно, нажмите OK, затем курсор останавливается в первых непрерывных пустых ячейках.

цикл документов до пустого 3 цикл документов до пустого 4

Легко объединяйте несколько листов / книгу в один лист или рабочую книгу

Объединение нескольких листов или книг в один лист или книгу может быть удобно в Excel, но с Сочетать Функция в Kutools for Excel, вы можете объединить десятки листов / книг в один лист или книгу, а также вы можете объединить листы в один только несколькими щелчками мыши.  Нажмите, чтобы получить 30-дневную полнофункциональную пробную версию!
объединить листы
 
Kutools for Excel: с более чем 300 удобными надстройками Excel, вы можете попробовать бесплатно без ограничений в течение 30 дней.

Лучшие инструменты для работы в офисе

Kutools for Excel решает большинство ваших проблем и увеличивает вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма ...
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон...
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы... Предотвращение дублирования ячеек; Сравнить диапазоны...
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор ...
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое ...
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии...
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом ...
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF...
  • Более 300 мощных функций. Поддерживает Office / Excel 2007-2019 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
вкладка kte 201905

Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
офисный дно
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Robert · 2 years ago
    The loop works for me except it loops through every single row regardless of it being blank or not.
  • To post as a guest, your comment is unpublished.
    Shane · 2 years ago
    Lets say I have a ton of rows...any tricks on making this run faster?
  • To post as a guest, your comment is unpublished.
    Marija · 3 years ago
    Can you please explain what is the condition to stop looping? What makes you break out of the loop in Test1()?
    • To post as a guest, your comment is unpublished.
      Sunny · 3 years ago
      It will stop while meeting the first blank in the column
  • To post as a guest, your comment is unpublished.
    J · 3 years ago
    Its looping a column not a row
    • To post as a guest, your comment is unpublished.
      SomeGuest · 3 years ago
      In order to loop through a column, you must go by row number.