Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Введение примеры по VBA.doc
Скачиваний:
13
Добавлен:
22.09.2019
Размер:
1.99 Mб
Скачать

Задачи на закрепление материала

       Пример 20. Создать программу, которая при вводе имени пользователя и числа от 1 до 10 в текстовые поля формы выдает в метку label1 предсказание в зависимости от введенного значения.       При разработке программы использовать одномерный массив, объявляемый в процедуре Fortuna, содержащей все возможные предсказания.        Технология выполнения       1. Откройте приложение Word, сохраните документ и перейдите в редактор VBA.       2. Создайте форму (рис. 38).       3. Пропишите обработчики событий нажатия на кнопки « Вывести предсказание» и « Закрыть».  

       Рис. 38.Форма примера 20 в рабочем состоянии         При обработке процедуры нажатия кнопки Вывестиможно опираться на нижеприведенный листинг.        Примечание.Обратите внимание на создание процедуры, содержащей массив предсказаний, и вызов этой процедуры из процедуры нажатия кнопки « Вывести предсказание», учитывая «защиту от дурака».

      Sub fortune(a As String, b As Integer)       Dim today(1 To 10)       today(1) = «Вы станете богатым и знаменитым за 15 минут»       today(2) = «Вам предстоит обед с незнакомцем»       today(3) = «Стоимость Ваших вкладов удвоится!»       today(4) = «Вы получите большой букет от своего почитателя»       today(5) = «Вы опоздаете на пару»       today(6) = «Все Ваши мечты сбудутся»       today(7) = «Вам вернут долг»       today(8) = «Вы выучите лекцию и ответите на опрос»       today(9) = "Вы встретите своего давнего знакомого»       today(10) = «На Вас обратят внимание»       Label3.Caption = a & «, Вас ожидает следующее:» & today(b)       End Sub

      Private Sub CommandButton1_Click()       Dim a As String       Dim b As Integer       a = TextBox1.Text       b = Val(TextBox2.Text)       If b > 0 And b <= 10 Then       Call fortune(a, b)       Else: Label3.Caption = «Вы ввели не то число!»       End If       End Sub

      4. Откомпилируйте программу.       5. Запустите приложение на выполнение.        Пример 21. Создать форму, в текстовые поля которой вводятся имя и пароль. Если пароль введен правильно, то пользователь получает доступ к списку некоторой группы, отражаемой в элементе listbox, при этом выдается сообщение о допуске пользователя к списку. Список организуется программно.

 Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11

Технология выполнения       1. Откройте приложение Word, сохраните документ и перейдите в редактор VBA.       2. Создайте форму (рис. 39).  

       Рис. 39.Форма примера 21 в рабочем состоянии. Сообщение о допуске         3. Переименуйте форму с Name на frmOne. Для этого активизируйте форму (щелкните на ней), перейдите в окно свойств объекта (properties), выделите свойство Name (первая строка) и пропишите frmOne.       4. Создайте текстовые поля textbox1 и textbox2. Первое будет использоваться для ввода имени, второе – для ввода пароля, поэтому переименуйте их на txtNameи txtPassword(аналогично пункту 3).       5. Как правило, вводимый пароль не отображается в поле. Чтобы вводимые символы пароля заменялись звездочками, выделите поле пароля, затем в окне Propertiesнайдите свойство PasswordCharи задайте для него значение «*».       6. Добавьте кнопки. Переименуйте первую кнопку на btnOK. Кнопка OK должна быть кнопкой по умолчанию. Это означает, что на нажатие клавиши Enter форма должна реагировать так же, как и на щелчок этой кнопки. Для этого измените значение свойства Defaultкнопки btnOK на True.       7. Переименуйте вторую кнопку на btnCancel. Щелчок кнопки Cancelобычно эквивалентен нажатию клавиши Escape. Чтобы в вашем окне было именно так, задайте значение «True» для свойства Cancel.       8. Создайте процедуру закрытия формы.       9. Создайте процедуру работы кнопки ОК. В заготовке процедуры

      Private Sub btnOK_Click()       End Sub

      вставьте оператор MsgBox Txtname & «получил(а) доступ». В этом операторе текст, введенный в поле txtName, объединяется с поясняющей строкой и выводится в информационном окне.       10. Создайте процедуру для проверки пароля. Закроем доступ к кнопке OK, пока не введен верный пароль. Для этого измените свойство Enabledкнопки OK на False(доступ к кнопке закрыт) и введите новую процедуру:

      Private Sub CheckOK()       Const pas = «abc» 'Пароль       If Txtpassword = pas Then 'Если текст в поле        Txtpasswordсовпадает с паролем, то btnOK.Enabled = True 'доступ к кнопке OK открыт       Else 'иначе       btnOK.Enabled = False 'доступ к кнопке OK закрыт       End If       End Sub

      Процедура должна запускаться при вводе нового пароля. Для этого в окне формы щелкните дважды второе текстовое поле (предназначенное для пароля). В появившуюся процедуру

      Private Sub Txtpassword_Change()       End Sub

      введите единственную команду CheckOK, которая при внесении любых изменений в поле пароля будет запускать процедуру проверки пароля.       11. Заполните список группы. Расположите на форме элемент управления ListBox.По умолчанию его имя ListBox1. Оставим его в таком виде. Заполнить список можно в операторе With:

      With ListBox1       List = Array(«Иванова Марина», «Гончарова Елена», «Зотова Татьяна», «Кринченко Светлана», «Орлов Сергей», «Петров Александр»)       End With

      Здесь List– свойство элемента ListBox, которое является массивом. Вставьте этот оператор в уже имеющуюся процедуру btnOK_Click.       12. Проверка работы формы. После запуска формы введите свое имя и верный пароль. Должна стать доступной кнопка ok. После ее нажатия появляются сообщение «Имя получил(а) доступ» и заполненный список. После нажатия кнопки Закрытьформа должна закрыться.