Найти несколько диапазонов на листе - PullRequest
0 голосов
/ 04 января 2019

У меня есть рабочая таблица планирования пропускной способности для воздушных маршрутов, которая включает количество мест в пункте назначения за данный период времени. Может быть более одного периода времени, потому что в расписании есть пробелы или количество мест меняется. Это создаст два «диапазона», для которых должны быть выполнены новые рейсы.

https://i.imgur.com/GCfHGcD.jpg

На рисунке показана небольшая часть листа Excel. Красный показывает первый диапазон с 15 апреля по 22 апреля, а синий - второй диапазон с 6 мая по 13 мая.

Я могу найти первый диапазон, найдя первую и последнюю заполненную ячейку в ряду. Я делаю это с помощью .End(xlToRight) и .End(xlToLeft).

Затем я использую найденную координату, чтобы присвоить переменной значение в ячейке (4, y). Примерно так:

lCol = Cells(ActiveCell.Row, 5).End(xlToRight).Column
fCol = Cells(ActiveCell.Row, 58).End(xlToLeft).Column
EffDate = Cells(4, fCol)
DiscDate = Cells(4, lCol)

Макрос циклически проходит по рабочему листу и добавляет полет по строке на другой рабочий лист. В идеале я хочу создать сценарий If-Else, чтобы проверить, есть ли несколько «периодов» подряд. Я не хочу соединять два диапазона вместе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...