Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
VBA учебник для ДИ и всех групп обучения.doc
Скачиваний:
3
Добавлен:
13.08.2019
Размер:
471.04 Кб
Скачать

Функции даты и времени

Основными функциями дат и времени VBA являются

Функция

Назначение

Date

Возвращает или устанавливает текущую дату

Time

Возвращает или устанавливает текущее время

Now

Возвращает или устанавливает текущую дату и время

DateSerial

Преобразовывает в дату три последовательных числа: год, месяц, число

TimeSerial

Преобразовывает в дату три последовательных числа: часы, минуты, секунды

DateValue

Преобразует в дату ее символьное представление

TimeValue

Преобразует во время его символьное представление

Timer

Возвращает временной интервал от полуночи (в сек.)

Day

Преобразует дату в день месяца

Month

Преобразует дату в месяц года

Weekday

Преобразует дату в день недели

Year

Преобразует дату в год

Hour

Преобразует дату в часы

Minute

Преобразует дату в минуты

Second

Преобразует дату в секунды

Наверх

Дальше

На главную страницу

Преобразование типов данных

VBA предоставляет возможность преобразовать тип данных в любом месте программы. Это можно сделать с помощью функций

Функция

Назначение

CBool

Преобразует в тип Boolean

Ccur

Преобразует в тип Currency

Cdate

Преобразует в тип Date

CDbl

Преобразует в тип Double

Cint

Преобразует в тип Integer

CLng

Преобразует в тип Long

Csng

Преобразует в тип Single

CStr

Преобразует в тип String

Cvar

Преобразует в тип Variant

Создание и применение процедур и функций.

Типы процедур

Процедуры - это небольшие по объему программы, включаемые в состав общей прикладной программы. Обычно любая прикладная программа состоит из нескольких процедур, но как минимум в ней должна содержаться одна, которая является главной или управляющей процедурой, поэтому ей присваивают имя Main().

Каждая процедура начинается с оператора объявления и заканчивается указателем конца процедуры: Тип Sub Имя_Процедуры(Аргументы)

Операторы тела процедуры

End Sub

Оператор объявления процедуры присваивает ей имя, отмечает ее начало и перечисляет аргументы, значения которых передаются процедуре из вызвавшей ее программы. Тип указывает уровень доступа к процедуре - открытый, т.е. Public или ограниченный, т.е. Private.

Оператор End Sub отмечает конец процедуры.

Все операторы, которые располагаются между операторами объявления и окончания процедуры составляют тело процедуры. Данная совокупность операторов позволяет решить поставленную при вызове процедуры подзадачу и получить результат. Список Аргументов обеспечивает связь между вызывающей и вызываемой процедурами и предназначены для получения и передачи значений специальных переменных. Значения глобальных переменных таким способом не передаются, так как они доступны всем процедурам программы.

В VBA различаются четыре вида процедур:

 общие;

 командные;

 обработки событий;

 функции.

Общие процедуры - это обычные процедуры, которые ничего не изменяют за своими пределами.

Командные процедуры предназначены для обеспечения доступа из VBA к директивам меню программ, входящих в пакет Microsoft Office. Такие процедуры не получают никаких аргументов, а ввод данных организуется с помощью встроенных диалоговых окон.

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

Функция - это процедура, которая возвращает результирующее значение в своем имени. По сравнению с использованием общих процедур, применение функций дает ряд преимуществ. В частности, их можно включать в расчеты как простые переменные. При этом отпадает необходимость в создании специальной переменной для хранения результирующего значения, а операторы передачи значений значительно упростятся. Организация вызова процедуры Если в ходе выполнения программы возникает необходимость в вызове процедуры, то в тело вызывающей процедуры просто записывается имя вызываемой и передать ей значения аргументов.

ПРИМЕР: Proc1()

Multiplication а=Val1, b=Val2

. Иногда может возникнуть ситуация, когда программа состоит из нескольких модулей, которые в свою очередь содержат процедуры с одинаковыми именами. В этом случае нужно специально указывать, к какому именно модулю относится вызываемая процедура, потому что VBA сначала будет искать данную процедуру в том же модуле, где находится вызывающая процедура и только после этого - в других модулях.

ПРИМЕР: [Модуль1].Proc1

[Модуль2].Proc1

Будут последовательно вызваны две различные процедуры, имеющие одно и то же имя. С вызовом разноименных процедур никаких проблем не возникает. Для того, чтобы предотвратить доступ к процедуре из других модулей, достаточно указать ключевое слово Private (“личная”) в операторе объявления данной процедуры.

Напротив, для обеспечения доступа к процедуре из других модулей, следует указать, что она “открытая”. С этой целью в операторе объявления следует указать ключевое слово Public.

ПРИМЕР:

Private Sub Risk() Public Sub Raschet(a As Integer, b As Single, q As Currency)

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