![]() ![]() колонтитул в word 2007, 0000002111
Операторы ветвления VBA. Безусловный переход.В реальных программах зачастую бывает необходимо выполнять более сложный выбор в процедурах, выбирая между тремя и более ветвями. В этом случае можно помещать операторы If..Then..Else друг в друга. Это называется вложением операторов. ![]() Вышепоказанная процедура использует несколько вложенных друг в друга операторов условного перехода. Следует сказать, что такая процедура будет работать только в Excel, т.к. использует метод Application.InputBox (см. Функции host-приложений). Этот метод не дает пользователю во время работы функции ввести что-либо, кроме числа. Если пользователь вводит не число, а текст, то получает об этом сообщение и если пользователь ничего не вводит, то получает сведение об ошибке. ![]() Если пользователь воспользуется кнопкой "Отмена", то получает сообщение "Не введены данные". VBA предоставляет сокращенную версию оператора If..Then..Else, являющуюся сжатым эквивалентом вложенных операторв If..Then..Else, использованных в листинге. Такой краткой формой является операторIf..Then..ElseIf ![]() Какой из вариантов использовать - вопрос, который решает каждый программист для себя индивидуально. Считается, что второй вариант более компактный, тогда как первый - более удобный и понятный. Для выполнения выбора из нескольких возможных ветвей кода можно вкладывать операторы If..Then..Else на много уровней вглубь, но уследить за ходом выполнения ветвей становится все труднее и труднее. VBA имеет условный оператор перехода для использования в случаях, когда необходимо выбирать из большого количества различных ветвей кода - Select Case. Он работает практически так же, как и Else..If, но более понятен. Ключевые слова Select Case используются со многими операторами Case, где каждый оператор Case проверяет появление другого условия и выполняется только одна из ветвей Case. Ветвь Case может содержать один, несколько или ни одного оператора VBA. ![]() Оператор безусловного переходаОператор безусловного перехода, можно сказать, является рудиментом от ранних языков программирования, в которых он являлся практически единственным средством организации циклических выполнений блоков кода. Оператор безусловного перехода всегда изменяет порядок выполнения операторов в процедуре или функции. При этом не проверяется никаких условий. Синтаксис: GoTo line line - любая допустимая метка или номер строки в той же процедуре или функции, которая содержит оператор GoTo. При выполнении оператора GoTo управление выполнения программы немедленно передается оператору в строке, определенной с помощью метки line. ![]() В среде программистов считается, что любую логику программы можно организовать без применения оператора безусловного перехода. Поэтому, применение GoTo может быть оправдано только в исключительных случаях. колонтитулы в word 2007, 000000211111
колонтитулы в word 2007, 000000211
нумерация страниц в word 2007, 00000021111
![]() ![]() |