На этом шаге мы рассмотрим соддержимое этой области.
Рабочий лист Ввод (рисунок 1) предназначен непосредственно для прокладывания маршрута через выбранные НП и расчета времени в пути по этому маршруту с учетом средней скорости и возможных задержек.
Рис.1. Область выбора маршрута рабочего листа Ввод
Его условно можно разделить на четыре составляющих:
Рассмотрим более подробно каждую составляющую.
Область выбора маршрута (рисунок 1), в свою очередь, состоит из:
Каждому элементу управления в диалоговом окне Формат элемента управления в поле Формировать список по диапазону задайте область В2:В200 на рабочем листе Города, в которую введены названия НП (рисунок 2).
Рис.2. Рабочий лист Города
Элементы Поле со списком помещают результат (порядковый номер названия НП по списку на листе Города) в ячейки R1:R8.
=ВПР(R1;Города!$A$2:$B$200;2;ЛОЖЬ)
Искомым значением, по которому формулой производится поиск названия НП, является порядковый номер в ячейке R1, под которым этот НП находится в списке на листе Города. В остальные ячейки диапазона F3:F8 введены ссылки на ячейки, в которых находятся формулы поиска названий НП конечной точки предыдущей части маршрута. Например, в ячейке F3 находится ссылка на ячейку G2.
В ячейке G2 формула, которая производит поиск названия НП конечного пункта части маршрута, но если в списке НП указан текст НЕТ, то тогда возвращает значение "":
=ЕСЛИ(ВПР(R2;Города!$A$2:$B$200;2;ЛОЖЬ)="НЕТ";""; ВПР(R2;Города!$A$2:$B$200;2;ЛОЖЬ))
В ячейке G3 находится формула аналогичная предыдущей:
=ЕСЛИ(F3="";"";ЕСЛИ(ВПР(R3;Города!$A$2:$B$200;2;ЛОЖЬ)="НЕТ";""; ВПР(R3;Города!$A$2:$B$200;2;ЛОЖЬ)))
В диапазоне ячеек Н2:Н8 находятся формулы соединения текста названия НП, находящиеся в столбцах F и G.
В ячейке I2 находится формула, которая при значении в ячейке G2, отличном от "", производит поиск расстояния между НП на листе База:
=ЕСЛИ(G2="";"";ВПР(H2;База!C:D;2;ЛОЖЬ))
Весь маршрут, с наименованиями населенных пунктов, через которые проложен путь, формируется в ячейке F11 по формуле, соединяющей названия НП через знак прочерка:
=СЦЕПИТЬ(F2;" - ";G2;" - ";G3;" - ";G4;" - ";G5;" - ";G6;" - ";G7;" - ";G8)
В ячейке I11 находится формула суммирования всех отрезков пути между НП, формируемая в диапазоне ячеек I2:I8.
В верхней части листа находится кнопка Обновить все формулы, задачей которой является обновление всех формул на листе Ввод с помощью назначенного ей макроса ОбновитьВсеФормулы. Этот макрос создается механической записью всех введенных на этом листе формул и последующей редакцией кода VBA.
Рис.3. Область ввода прогнозных данных рабочего листа Ввод
При желании возможен ввод средней скорости на каждом отрезке маршрута, для чего в расчетах времени прохождения каждого отрезка пути задайте ссылку не на ячейку I13, а на диапазон выбранных пользователем ячеек с введенными в них значениями средней скорости. Возможен также ввод не средней скорости движения, а предполагаемого времени нахождения в пути на каждом отрезке маршрута, для чего потребуется незначительное изменение формул. Причем можно создать дополнительную табличную базу данных с указанием средней скорости (времени) прохождения каждого отрезка введенных расстояний между НП.
В ячейки диапазона F16:F22 введите ссылки на ячейки диапазона G2:G8, указывающие название НП, являющегося конечным пунктом отрезка пути.
В области I16:I22 введите с клавиатуры время в часах, необходимое для остановок на каждом отрезке пути или городе, являющимся конечным пунктом одного из отрезков пути, название которого указано в диапазоне F16:F22. Например, на обед, на отдых, время на разгрузку/погрузку в этом пункте и так далее.
И в ячейку I24 вводится предполагаемые дата и время выезда из начальной точки отправления.
На следующем шаге мы рассмотрим область определения времени прибытия и отправления.