Главная страница
Навигация по странице:

Введение в программирование на vba



Скачать 30.03 Kb.
Название Введение в программирование на vba
Дата 15.03.2018
Размер 30.03 Kb.
Формат файла docx
Имя файла Primer2_1_Zadachi.docx.docx
Тип Задача
#31972

Практическое задание №2_1

Тема: Введение в программирование на VBA

Цель занятия. Ознакомиться со средой разработчика VBA. Научиться записывать и отлаживать тексты программ на VisualBasic. Ознакомиться с концепцией данных VisualBasic и операторами передачи управленияIf и Select Case. Ознакомиться с некоторыми функциями обработки данных.

Копируйте данный документ (файл Primer2_1_Задачи.doc) в собственную папку и сохраните как файл с поддержкой макросов.

Включите вкладку Разработчик на ленте (включается в параметрах Word), перейдите в среду разработчика Visual Basic.

Дальнейшие задания выполняются в среде визуального редактирования VBA записью процедур обработки данных SubExit Sub. Запуск процедуры выполняется по кнопке Run Sub .

Задание №1. Тема: Оператор присваивания, типы данных

Задача 1. Прочтите пример Number() «Из числа в строку». Введенное дробное число, например, 12.33, переводится в число прописью: «12 руб. 33 коп.». При этом с использованием операции конкатенации (знак + или &) формируется строка, которая выводится в окно сообщений.

Окно ввода InputBox возвращает строку. Для перевода из числа в строку используется функция Str(число), для обратного перевода используется функция Val(строка).

Для отделения целой части числа от дробной используется функция Int.

Задача 2. Запишите процедуру решения задачи для пересчета указанного значения веса из фунтов в килограммы (1 фунт = 405,9 грамма).

Указание: можно использовать тип Single или Double.

Задание №2. Тема: Условный оператор

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

Указание. Использовать тип Date. Как целое значение номер года выделит функция Year(дата).

Задача 2. Ввести дату. По значению даты определить время года.

Указание. Как целое значение номер месяца вернет функция Month(дата).

Задача 3. Генерировать пример на сложение двух чисел, заданных в диапазоне от 1 до 100. Ввести ответ и проверить его правильность. Вывести сообщение «Правильно» или «Неправильно».

Указание. Функция Rnd() возвращает случайное число типа Single в диапазоне от 0 до 1. Это значение можно присвоить переменной целого типа. Для повышения значения результат умножается на константу, например: Rnd()*100. Для инициализации генератора случайных чисел в код включается директива Randomize.

Задание №3. Тема: Оператор SelectCase

Задача. Результат сдачи ЕГЭ представлен как числовое значение в диапазоне от 0 до 100 баллов. Требуется ввести значение в баллах (контролировать при вводе), и пересчитать в пятибалльную систему.

Задание №4. Тема: Нестандартные задачи

Задача 1. Летит стадо гусей, а навстречу ворона. Ворона говорит: «Как много вас, гусей, наверное, N?», на что вожак отвечает «Если взять нас столько, и еще пол столько, и четверть столько, то будет N». Сколько же гусей в стае? Иметь в виду, что гуси и вороны считают не очень хорошо, и N не может быть любым.

Задача 2. Одна жемчужина диаметром d стоит Cost рублей. Найти сколько будет стоить ожерелье на шею, обхват которой D см.

Указание. Исходные данные ввести, вычислить результат, вывести в денежном представлении. Использовать тип Currency – денежное представление.

Задание 3. Запишите процедуру решения задачи: определить, как наименьшим числом купюр можно выдать сумму К рублей (K<9999), если есть купюры достоинством 1000 руб., 500 руб., 100 руб., 50 руб. и 10 руб. Оставшуюся мелочь выдать рублями.

Указание. Введенная сумма, это целое число. Операция \ – деление нацело, Mod – остаток от деления. Результат формируется как длинная строка, чтобы в окне вывода каждое значение было выведено в отдельной строке, используется константа vbCr – переход на новую строку.

Присваивание, типы данных:

Условный оператор

Задание 2. Является ли строка палиндромом – удалить пробелы и знаки препинания, к одному регистру.
Trim(string) Вырезает из строки все пробелы слева и справа.

Mid(string, start[, length]) Вырезает из строки string с позиции start length символов.

Left(string, length) Возвращает length символов, начиная с первого левого символа строки string

Right(string, length) Возвращает length символов, начиная с самого правого символа строки string

Len(string) Возвращает длину строки. Например, длина строки "Добрый день" составляет 11 символов - учитывая пробел. Выходное значение имеет тип Long.
написать администратору сайта