Институт управления, бизнеса и права
Опубликован: 25.03.2009 | Доступ: свободный | Студентов: 7323 / 1525 | Оценка: 4.41 / 4.15 | Длительность: 14:33:00
Дополнительный материал 1:

Задания

< Лекция 17 || Дополнительный материал 1
Ключевые слова: знание, VBA

Ниже приведены задачи, с помощью которых вы можете оценить ваш уровень владения материалом. Задания первого уровня подразумевают знание наиболее общих вопросов программирования на VBA, основ работы с элементами управления. Если вы справились с задачами первого уровня – это значит, что вы находитесь на начальном этапе освоения VBA.

Задачи второго уровня сложнее, они подразумевают более серьезные знания.

Задачи третьего уровня можно решить, хорошо освоив курс.

1 уровень сложности

  1. Создать в редакторе VBA форму, добавить на неё кнопку и текстовое поле с подписью "Введите ваше имя". После запуска формы пользователь должен ввести своё имя в поле. По нажатию кнопки должно вывестись окно сообщения с текстом: "Здравствуйте, ИМЯ_ПОЛЬЗОВАТЕЛЯ", где вместо "ИМЯ_ПОЛЬЗОВАТЕЛЯ" должно быть подставлено введенное имя.
  2. Создать в редакторе VBA форму, подписать её "Калькулятор". Добавить на форму три текстовых поля с подписями: "Число 1", "Число 2", "Сумма" и кнопку. По нажатию на кнопку в поле "Сумма" должна выводиться сумма чисел, введенных в поля "Число 1" и "Число 2".
  3. Создать в редакторе VBA форму и разместить на ней текстовое поле, метку и кнопку. По нажатии на кнопку, текст, введенный в текстовом поле, должен отображаться на метке.
  4. Создать в редакторе VBA форму, добавить на неё кнопку и метку. По нажатии на кнопку программа должна запрашивать у пользователя его имя, после чего выводить в метку текст: "Здравствуйте, ИМЯ_ПОЛЬЗОВАТЕЛЯ", где вместо "ИМЯ_ПОЛЬЗОВАТЕЛЯ" должно быть подставлено введенное имя.
  5. Создать в редакторе VBA форму высотой 100 пикселей и шириной 100 пикселей. Разместить на форме, в её верхней части, две кнопки. Кнопку №1 подписать как "Увеличить", кнопку №2 – как "Восстановить". Написать обработчики событий Click для кнопок таким образом, чтобы при нажатии на кнопку №1 размеры формы изменялись бы до 300х400 пикселей, при нажатии на вторую кнопку – восстанавливались до 100х100 пикселей. После изменения размеров формы должно выводиться сообщение о её текущих размерах.
  6. Создать в редакторе VBA форму, разместить на ней кнопку и текстовое поле. По нажатию на кнопку в текстовое поле должно выводиться сообщение, содержащее информацию о ширине формы такого вида: "Ширина текущей формы – x пикселей", где вместо x должна быть подставлена ширина формы.

2 уровень сложности

  1. Создать в редакторе VBA форму и разместить на ней два текстовых поля. Добавить к ним подписи "Введите число" и "Вывод". Запретите изменение пользователем содержимого второго поля. При вводе в первое окно числа во втором окне должно выводиться слово "Чётное" если число четное и "Нечетное" если число нечетное. Если введено не число – во втором окне должна быть отображена фраза "Неверный ввод".
  2. Создать в редакторе VBA форму размером 300х400 пикселей. Добавить на форму кнопку размером 25х25 пикселей. Написать обработчик соответствующего события для этой кнопки, который, при наведении указателя мыши на кнопку перемещает её в случайную позицию в пределах формы, а так же выводит в заголовок формы информацию о количестве перемещений кнопки.
  3. Создать в редакторе VBA форму, добавить на нее 5 элементов управления CheckBox, пронумеровать их от 1 до 5, задать имена вида cbo_n, где n – номер элемента управления от 1 до 5. Добавить на форму четыре кнопки. Первая кнопка, подписанная как "Установить четные", устанавливает четные флажки, кнопка "Сбросить все" сбрасывает все флажки, кнопка "Количество установленных флажков" выводит сообщение вида "Количество установленных флажков равно n ", в том случае, если ни один флажок не установлен, выводит сообщение "Ни один флажок не установлен"
  4. Добавить в VBA-проект три формы. Первую форму назвать frm_Main, вторую – frm_1, третью – frm_2. Разместить на форме frm_Main три кнопки. Две из них должны скрывать frm_Main и отображать, соответственно, frm_1 и frm_2, третья должна завершать работу программы. На frm_1 и frm_2 разместить по одной кнопке, которая, соответственно, скрывает frm_1 и frm_2 и отображает главную форму. Разместить в документе MS Word кнопку, которая отображает главную форму.
  5. Написать программу, которая запрашивает у пользователя число n, большее 1, после чего заполняет одномерный массив длиной n чисел случайными числами в диапазоне от 1 до n*3 и выводит этот массив в документ MS Word, разделив отдельные элементы массива запятой
  6. Написать программу, которая запрашивает у пользователя число n от 2 до 20, после чего заполняет массив длиной n чисел, запрашивая ввод каждого из чисел у пользователя. После ввода всех элементов , программа выводит в окне сообщения максимальный элемент массива.
  7. Написать программу, которая вводит массив случайных чисел в диапазоне от 1 до 100, после чего подсчитывает количество четных и нечетных элементов массива и выводит эти данные в окне сообщения.
  8. Написать программу, которая вводит массив из n случайных чисел ( n задаёт пользователь) в диапазоне от 1 до 100, после чего вычисляет их сумму и выводит в окне сообщения.
  9. Написать программу, которая вводит массив из n случайных чисел ( n задаёт пользователь) в диапазоне от -100 до 100, после чего вычисляет сумму четных элементов массива, абсолютное значение которых превышает 25.

3 уровень сложности

  1. Разработать программу, которая запрашивает у пользователя два числа – A и B и возвращает результат деления A на B. Предусмотреть перехват и обработку ошибок времени выполнения.
  2. Разработать программу, которая запрашивает у пользователя два числа, одно – длиной 4 цифры, не содержащее цифр 2, 4, 7, второе – длиной 5 чисел, не содержащее одинаковых цифр. Если пользователь ввел неправильные числа – программа должна запросить их ввод снова, предусмотрев отказ от ввода.
  3. Разработать программу, которая запрашивает у пользователя количество слов, которое он хотел бы обработать, после чего создаёт массив символьных переменных, запрашивая у пользователя каждое из слов. После заполнения массива программа должна вывести в документ MS Word список введенных слов, а так же – информацию о том, какая буква алфавита (прописные и строчные буквы учитываются совместно) встречается чаще всего.
  4. Разработать программу, которая предлагает пользователю выбрать длину одномерного массива – от 10 до 100 с шагом в 5. Заполняет этот массив случайными числами в диапазоне от 10 до 115, после чего преобразует его в двумерный массив (матрицу), в каждой из строк которой содержится по 5 элементов исходного массива, количество строк зависит от длины исходного массива, выбранного на начальном этапе. Перенести полученную матрицу на лист MS Excel, выделить цветом ячейки матрицы, содержащие четные числа, большие 50.
  5. Написать макрос MS Word, который работает с участком текста документа, выделенного пользователем. А именно – заносит каждое слово участка текста в массив, удалив знаки препинания, сортирует массив по возрастанию и выводит в новый документ MS Word в таком формате: Номер слова; слово; длина слова
  6. Разработать на VBA программу для шифрования и расшифровки русскоязычного текста, выделенного в текстовом редакторе MS Word сдвиговым методом на произвольное целое число символов - n, которое и будет паролем для расшифровки текста. Строчные и прописные буквы шифруются отдельно. При шифровании букв, коды которых находятся на расстоянии n+1 от конца кодового пространства строчных или прописных букв, использовать для замены символы из начала кодового пространства. Например, кодовое пространство строчных русскоязычных букв находится в диапазоне 224 – 255 – если нужно зашифровать символ с кодом 250 при размере n, равном 7, то этот символ заменяется на второй символ, т.е. 7- (255-250)=2. Другие символы в тексте должны остаться незашифрованными.
< Лекция 17 || Дополнительный материал 1
Евгений Ушаков
Евгений Ушаков

Добрый день! Поясните, пожалуйста, 3000 р. стоит документ об окончании курса. Если он не нужен, то можно учиться бесплатно?

Александр Новиков
Александр Новиков

Добрый день! Очень нужен справочник по объектам VBA c описание их методов и свойств.

Кто-нибудь знает, где можно приобрести?

(Он конечно есть в VBA - Object browser, но не очень удобный)