Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
VBA_задания_2014.docx
Скачиваний:
38
Добавлен:
12.03.2016
Размер:
5.19 Mб
Скачать

Порядок выполнения работы

  1. Настройка Excel

  1. Откройте книгу MS Excel. Сделайте ее настройку (рисунок 10):

  2. Выберите кнопку «Файл» и «Параметры»,

    1. выберите вкладку «Формулы» и установите стиль ссылок R1C1 – выключено;

б. выберите вкладку «Основные» и установите: листов в новой книге – 3; стандартный размер шрифта –10;

Рисунок 10. Настройка «Параметров», вкладка «Основные»/»Общие»

3. Переименуйте рабочий лист, выполнив следующие действия:

  • установите указатель мыши на вкладку с именем листа (Лист 1) и вызовите контекстное меню, щелкнув правой клавишей мыши;

  • выберите в текстовом меню параметр «Переименовать», введите имя в диалоговое меню: «Исследования»

4. Сохраните созданную рабочую книгу с новым именем, выбрав кнопку «Office» и «Сохранить как…» выбрав «Книга Excel с поддержкой макросов».

  1. Запись макроса «Возраст»

По исходным данным рассчитайте возраст пациентов (рисунок 11).

Рисунок 11. Таблица с исходными данными

Для безошибочной записи макроса необходимо скопировать формулу вычисления возраста в буфер обмена: так, выделим курсором начиная со знака «=» до конца формулы

=ГОД(СЕГОДНЯ())-ГОД(B4) - ЕСЛИ(ИЛИ(МЕСЯЦ(СЕГОДНЯ())<МЕСЯЦ(B4); И(МЕСЯЦ(СЕГОДНЯ())=МЕСЯЦ(B4);ДЕНЬ(СЕГОДНЯ())<ДЕНЬ(B4)));1;0)

и скопируем с помощью сочетания клавиш Ctrl+C или вкладка «Главная»/»Буфер обмена»/»Копировать».

Для отображения панели инструментов Visual Basic необходимо открыть вкладку «Разработчик»/»Код»/»Запись макроса»

Введите имя макроса: ВозрастФормула, нажмите «ОК».

С этого момента все действия записываются в макрос.

  1. Поставьте курсор в ячейку G4;

  2. Введите формулу для расчета возраста, формула рассчитывает разность между текущей датой и датой рождения:

=ГОД(СЕГОДНЯ())-ГОД(B4) - ЕСЛИ(ИЛИ(МЕСЯЦ(СЕГОДНЯ())<МЕСЯЦ(B4); И(МЕСЯЦ(СЕГОДНЯ())=МЕСЯЦ(B4);ДЕНЬ(СЕГОДНЯ())<ДЕНЬ(B4)));1;0)

  1. функции СЕГОДНЯ: Возвращает текущую дату в числовом формате. Числовой формат даты – это код даты и времени, с помощью которого в Microsoft Excel производятся вычисления над датами и промежутками времени.

  2. функции ГОД: Возвращает год, соответствующий заданной дате. Год определяется как целое число в диапазоне от 1900 до 9999.

  1. Выделите ячейку G4, подведите курсов в правый нижний угол, у вас появится черное перекрестие, нажмите левую клавишу мыши и, не отпуская, протяните до ячейки G13. Вы скопировали созданную формулу в диапазон ячеек G5:G13.

  2. Остановите запись макроса «Разработчик»/»Код»/»Остановить запись».

  3. Таблица с рассчитанным возрастом представлена на рисунке 12.

Рисунок 12. Таблица с результатом выполнения макроса «ВозрастФормула»

Для просмотра результата записи макроса необходимо зайти по вкладке «Разработчик»/»Код»/»Макросы» выбрать макрос «ВозрастФормула» и кнопку «Изменить».

Изучите текст макроса.

Листинг макроса ВозрастФормула

Sub ВозрастФормула ()

Range("G4").Select

ActiveCell.FormulaR1C1 = _

"=YEAR(TODAY())-YEAR(RC[-5]) - IF(OR(MONTH(TODAY())<MONTH(RC[-5]), AND(MONTH(TODAY())=MONTH(RC[-5]),DAY(TODAY())<DAY(RC[-5]))),1,0)"

Range("G4").Select

Selection.AutoFill Destination:=Range("G4:G13"), Type:=xlFillDefault

Range("G4:G13").Select

End Sub

Закройте редактор VBA (правый верхний угол нажмите «x»).

6. Добавляем на лист «Исследования» элементы управления: вкладка «Разработчик» / группа »Элементы управления» / »Вставить» выбираем пиктограмму «Кнопка» из Элементов управления формы. Затем, поставим курсор внизу таблицы и, не отпуская левой клавиши мыши, вычерчиваем кнопку определяя ее размер.

 Появляется диалоговое окно «Назначить макрос объекту», выбираем макрос «ВозрастФормула», «ОК».

7.  Переименовываем Кнопку заменяя «Кнопка1» на «Возраст». При наведении курсора на кнопку появляется «ручка» и при нажатии макрос выполняется. 

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]