Файл: Освой самостоятельно программирование для MS Access 2002 за 24 часа [П.Киммел].pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 21.10.2020

Просмотров: 7952

Скачиваний: 25

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

универсальна. Для решения же вашей конкретной задачи удобнее воспользоваться

функцией CDate. Код в этом случае мог бы выглядеть так: CDate

Вопрос. Каким образом программа может узнать и использовать значения

 да-

ты и времени?

Ответ.

 В составе Access VBA есть функции, возвращающие системные дату и вре-

мя: Date и Time соответственно.

Вопрос. Могли бы вы порекомендовать удобньш способ запоминания всех служебных

слов и операторов языка?

Ответ.

 Многие из них вам уже хорошо известны. Если вы пользовались калькуля-

тором, то наверняка знакомы со многими арифметическими операторами. По мере

необходимости обращайтесь за дополнительной информацией и примерами к опера-

тивной справочной системе Access. Совершенствуйте свои знания на практике.

Задания

Ниже приведены тестовые задания и упражнения, которые помогут вам самостоя-

тельно проверить уровень освоения материала, изложенного в этой главе. Ответы на

вопросы вы найдете в приложении.

Тесты

1. Каков наиболее предпочтительный тип данных для хранения чисел с плавающей

точкой?

2. К какому типу должна относиться переменная, предназначенная для присваивания

результата вещественного деления?

3. В чем состоит отличие операторов (+ и &) сложения строк?

4. Чем отличается объявление переменной от ее инициализации?

5. Какое служебное слово применяется для объявления и инициализации постоянных

значений (констант)?

1. Напишите выражение объявления переменной для хранения

 и инициализа-

ции этой переменной значением текущей даты.

2. Составьте выражение для вычисления суммы числа и того же числа, помноженного

на дробь.

3. Напишите выражение для сложения строк, выполняющее неявное преобразование

типов данных.

50 Часть I. Азбука программирования в Access


background image

3-й час

Как программа
работает

Во всех программах используются определенные данные. Access — это приложе-

ние, которое обращается к данным двух разновидностей. Информацию первого рода
вы можете сохранить в базе данных, и она останется в том же виде даже в случае,
когда Access выгружается из памяти компьютера. Кроме того, программа оперирует
некоторыми данными в процессе своего выполнения, и они не сохраняются в памяти
после завершения работы.

Данные можно записывать на магнитные или иные носители, поддерживающие

возможности

 долговременного

 хранения, — жесткие диски, дискеты, компакт-диски,

магнитные ленты и т.п. Оперативное запоминающее устройство (ОЗУ) — это, в свою
очередь, пример

 временной

 компьютерной памяти.

На этом занятии речь пойдет о хранении данных в ОЗУ компьютера. Результаты

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

Большую часть забот, связанных с управлением ОЗУ, принимают на себя Access и

операционная система Windows. Но это не значит, что на вашу долю не остается ни-
чего — данными, с которыми работает ваша собственная программа, должны манипу-

лировать вы сами, и именно о таких вещах мы расскажем в этой главе.

Основные темы занятия.

• Подробнее об объявлении переменных.
• Как код обращается с данными.
• Всплывающие подсказки в окне редактора модуля Access.
• Применение режима непосредственного исполнения кода.
• Как пользоваться окнами просмотра результатов.


background image

О компьютерной памяти

Для программиста, работающего в среде Access, одинаково важны ресурсы долго-

временной и оперативной памяти компьютера. Если ваша программа для Access без-
действует, файл базы данных сохраняется на внешнем носителе, но если программа
активизируется, информация из базы данных порциями копируется в ОЗУ.

Для хранения данных на внешних носителях используются различные физические

эффекты, чаще всего — магнитные. ОЗУ же представляет собой набор электрических
микропереключателей. Современные компьютеры умеют обращаться с магнитными
носителями и электрическими полупроводниковыми переключателями, получая дос-

туп к различным устройствам долговременного хранения данных и оперативной па-
мяти. Программы операционной системы считывают информацию из ОЗУ и дорожек
дисков. Но подлинная "рабочая лошадка", везущая "воз" ответственности за все про-
исходящее, — это микропроцессор. Процессор вашего компьютера — такой как, ска-

жем, Intel Pentium 800 — управляет действиями по считыванию данных из оператив-

ной памяти и записи информации в нее.

Набор электрических проводников, по которым "путешествуют" информационные

сигналы, носит название

 шины.

 Адресная шина микропроцессора хранит сведения о

том, в каком месте памяти размещены данные. Между физическим адресом памяти и

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

данной книге.

Чтобы воспользоваться данными в памяти, процессору нужны соответствующие

инструкции и адрес. В роли "советчика" выступает код, который вы написали, а так-
же компилятор Access. Излагая свои мысли в виде кода, вы придерживаетесь правил
языка программирования Visual Basic for Applications (VBA). В составе Access имеется

компилятор, превращающий написанное вами в адреса и данные, которые компьютер

способен верно воспринимать.

Новый термин

Компилятор —

 это программа, которая преобразует текст, написанный на

языке программирования, в машинные команды, доступные компьютеру.

Компилятор — необходимый посредник между текстом на языке программиро-

вания и физической оперативной памятью компьютера, откуда процессор должен
черпать инструкции, регламентирующие его работу. Оперативная память — как раз

то место, где происходят самые важные события. Обрабатывая написанную вами
команду объявления переменной, компилятор назначает этой переменной адрес

памяти.

Объявление переменных

Объявление переменной сводится к написанию строки кода, содержащей имя пе-

ременной и ее тип. Из материала главы "2-й час. Познакомимся с

 вы уже узна-

ли, как строить выражения для объявления переменных с помощью служебного слова

Dim, но существует и несколько других форматов объявления, которые необходимо
знать. Напомним, как следует объявлять переменные с помощью инструкции Dim:
Dim

 As

ИмяПеременной — это значимое название переменной, на которое можно ссылать-

ся в программе, а ТипДанных — существующий тип данных, подходящий для разме-
щения информации определенного рода.

52 Часть I. Азбука программирования в Access


background image

Вы уже достаточно хорошо осведомлены относительно способа объявления пере-

менных с

 служебного слова Dim, поэтому теперь стоит узнать о новых фор-

матах объявлений. Существует четыре основных типа объявлений. Им соответствуют
служебные слова Dim,

 Const и Global. В следующих разделах мы расскажем

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

Переменные формата Dim

Формат объявления на основе служебного слова Dim является наиболее употреби-

тельным. Посредством Dim вы указываете компилятору на необходимость отведения
блока памяти для хранения значений переменной заданного типа.

Например, для записи в память числа типа Long необходимо 4 байта (или 32 бита).

Такой объем позволяет разместить в переменной число из диапазона, простирающе-
гося приблизительно от -2 млрд до 2 млрд.

1 байт состоит из 8 бит. Поэтому под переменную 2-байтового типа

отводится 16 бит. Законы комбинаторной математики гласят, что для
подсчета количества различных

 нулей и единиц в

последовательности битов заданной длины достаточно возвести 2 в
степень, равную длине последовательности (в нашем примере — 16),

т.е.

 = 65536. Принимая

 внимание необходимость хранения как

положительных, так и отрицательных значений, получим диапазон
допустимых значений от -32768 до 32767. Простейший способ
получения сведений об ограничениях, присущих каждому типу

данных, — обратиться к оперативной справочной системе Access 2002.

Для начала целесообразно запомнить хотя бы такие типы данных:

String (для хранения символьных последовательностей), Integer (для
небольших целых чисел) и Double (для вещественных чисел).

Хотя не так уж и важно знать, сколько именно памяти отводится под переменную

того или иного типа, иметь представление о наборе доступных типов и соответствую-
щих им диапазонах допустимых значений необходимо. Указанные сведения находятся
в статьях оперативной справочной системы Access.

Наиболее широкое применение находят такие типы данных — String, Integer и

Double. String предназначен для хранения фрагментов текста, Integer — целых чи-
сел в диапазоне от -32768 до 32767, a Double — очень малых или больших чисел, от-

рицательных или положительных, а также чисел с плавающей точкой.

Переменные формата ReDim

Тип объявления посредством служебного слова ReDim применяется при
работе с массивами данных.

 Массив —

 это последовательность частиц

информации, занимающая в памяти непрерывный ряд ячеек, каждый
элемент которой адресуется с помощью индекса. Массивы полезны в том

 случае, когда вы имеете дело с несколькими значениями одного типа.

Например, если необходимо объявить переменные для хранения десяти

номеров лицевых счетов, удобно воспользоваться массивом значений ти-
па String. Ниже приведен пример, иллюстрирующий синтаксис объяв-
ления с помощью служебного слова ReDim:

ReDim

 As

со

О

3-й час. Как программа работает с данными

53


background image

Вначале вводится слово ReDim, за ним следует имя (идентификатор) массива, ко-

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

сле которого указывается обозначение типа данных. Следующая строка кода — при-
мер реального объявления массива с помощью ReDim:
ReDim

 10 ) As String

Трактовать ее следует как инструкцию объявления массива из десяти переменных

символьного типа, причем число их может меняться. Слово ReDim употребляется ис-
ключительно для объявления массивов — с его помощью вы уведомляете Access, что
число элементов массива может варьироваться.

Обратите внимание, что для объявления массива допускается исполь-
зование и служебного слова Dim, но при этом в дальнейшем вы не смо-

жете изменить число элементов массива. Применение же ReDim га-

рантирует последующую возможность увеличения или уменьшения ко-
личества элементов.

Массивы имеют большое значение при работе с несколькими однотипными эле-

ментами данных. Служебное слово ReDim — это первое, что следует вспомнить, если
вы решите обратиться к возможностям построения массивов. Подробнее о массивах
см. главу

 час. Управление данными переменного объема".

Постоянные значения

Dim используется при объявлении объектов данных, значения которых могут из-

меняться во время выполнения программы. А служебное слово Const подразумевает
совершенно противоположное — содержимое объявленной с

 помощью величины

всегда остается неизменным.

 Окружающий мир предлагает убедительные и наглядные примеры постоян-

ных величин. Число

 л,

 как известно, приблизительно равно 3.14159. В случае

необходимости использования числа

 в вычислениях удобно объявить в

программе соответствующую величину с помощью слова Const. Предлагаем
описание синтаксиса подобной конструкции:

 = Значение

Служебное слово Const сопровождается наименованием постоянной величины, за

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

 п

 в тексте программы могло бы выглядеть следующим образом:

Const PI = 3.14159

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

тельно и неукоснительно. Ваш код приобретет профессиональный вид и

станет понятен другим.

54

Часть I. Азбука программирования в Access