Суббота, 14.02.2026, 11:15
Приветствую Вас, Гость | RSS
Продвинь свой сайт
Промо-материалы
Категории
SEO
Создание сайтов
Главная » Статьи » Microsoft Access » Microsoft Access [ Добавить статью ]

Основы программирования на Visual Basic



Основы программирования на Visual Basic


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

Общая область

 Раздел описаний


Процедура 1

... ... ...
Процедура N


В стандартном модуле могут храниться обычные процедуры типа Sub и Function. Sub-процедура - это подпрограмма, которая не возвращает значения. Function - процедура-функция, которая возвращает значение. При объявлении требуется соблюдать правила описания процедур.
Формат описания для процедуры Sub
Sub имя ([ аргумент])
          инструкции
end sub
Необязательный аргумент позволяет передавать в процедуру требуемые значения. Процедура Sub вызывается инструкцией:  Call имя. Синтаксис описания функции очень похож на синтаксис  процедуры Sub, но есть и отличия:
Function имя ([ аргумент]) [ as тип]
       инструкции
       имя = выражение
end function
Параметр as тип позволяет явно задать тип данных, который возвращает функция. Если он опущен, то по умолчанию возвращается значение типа Variant. Если в разделе описания модуля помещена инструкция Option Explicit,  то неявное описание запрещено. Функцию можно вызвать из выражения.
Константы и переменные могут бать описаны как в разделе описания модуля, тогда они доступны во всех процедурах модуля, так и внутри процедур, тогда они действуют только в ее пределах.
Формат описания переменных:
Dim  Имя переменной [ as тип данных]
Основные типы данных, которые используются при описании: Boolean, Byte, Integer, Long, Currency, Single, Double, Date, String, Variant, Object. Если тип данных не указан, по умолчанию переменная получает тип  Variant. Данные этого типа интерпретируются в зависимости от операции, в которой они используются, т.е. тип может меняться.
Формат описания констант:
Const  Имя константы =  значение
Константы может определять пользователь и можно использовать стандартные константы , определенные системой. Первые две буквы в имени встроенных констант являются префиксом. Константы из библиотеки VBA имеет префикс "vb". Константы библиотеки Access имеют префикс "as".
В выражениях могут использоваться стандартные функции языка. Перечислим некоторые из них: математические: Sin(x), Sqr(x), Exp(x), Log(x), Tan(x), Int(x) и пр.;   преобразования: Str(s), Chr(x), Val(s); системные функции: InputBox- функция ввода данных через системное окно, MsgBox - функция выдачи сообщений в системное окно. Эти функции удобны для организации ввода - вывода в процессе работы программы.
Формат функции ввода:
Переменная=InputBox(Приглашение[, заголовок][, начальное значение])
Функция InputBox возвращает значение типа String. Например:
Dim c as string
Dim g as integer
c=InputBox("Введи наименование товара:")
g=Val(InputBox("Введи его цену:",,0)
Формат функции вывода сообщений:
[Переменная=]MsgBox(Текст[,опция][,Заголовок])
Опция ОР определяет внешний вид окна. Значение  ОР=ОР1 + ОР2
ОР1-определяет вид пиктограммы выводимой в окне. Значения этой опции приведена в следующей таблице:
Константа    Значение    Описание
VbCritical    16    Используется значок Критическое сообщение
VbQuestion    32    Используется значок Предупреждающий запрос
VbExclamation    48    Используется значок  Предупреждение
VbInformation    64    Используется значок Информационное сообщение
Например:
x=MsgBox("Возможна ошибка!",VbExclamation)
                              или
x=MsgBox("Возможна ошибка!",48)
OP2 - опция определяет набор кнопок выводимых в окне. Значения этой опции приводится в следующей таблице:
Константа    Значение    Описание
VbOKOnly    0    Отображается только кнопка OK
VbOKCancel    1    Отображаются кнопки ОК и Отмена
VbAbortRetryIgnore    2    Отображаются кнопки Прервать,Повторить и Пропустить
VbYesNoCancel    3    Отображаются кнопки Да, Нет и Отмена
VbYesNo    4    Отображаются кнопки Да, Нет
VbRetryCancel    5    Отображаются кнопки Повторить и отмена
Например:
x=Msgbox("Функция="+str(f),VbOKOnly,"Результаты расчета")
x=MsgBox("Будете еще вводить?, VbYesNo+VbQuestion, "Запрос")
                              или
x=MsgBox("Будете еще вводить?,36,"Запрос")
Функция MsgBox возвращает значение, которое зависит от того, какая кнопка была нажата в окне. Значения, возвращаемые функцией приведены в следующей таблице:
Константа    Значение    Описание
VbOk    1    Ok
VbCancel    2    Отмена
VbAbort    3    Прервать
VbRetry    4    Повторить
VbIgnore    5    Пропустить
VbYes    6    Да
VbNo    7    Нет

Например:
x=MsgBox("Распечатать документ?,36)
if x=6 then  Call PrintRep
Каждая инструкция в процедуре записывается с новой строки. Чтобы записать несколько инструкций в одной строке их надо разделять символом двоеточие. Если инструкция слишком длинна, то в конце строки вводят символ продолжения строки - подчеркивание ( _ ) - ф затем нажимают клавишу <Enter> и придолжают инструкцию на следующей строке.
В языке Visual Basic Имеется целый набор инструкций, управляющих порядком выполнения команд. Рассмотрим некоторые из них.

1)     Инструкция If ...Then ... Else
Формат:
      if  условие Then
              [инструкции]
[else
       инструкции]
End if

Например, разработаем процедуру вычисления функции f=y/c, где y=5, а  с- вводится с клавиатуры. Если будет введено с=0, должно выводиться сообщение.

Sub prim()
Dim f,c As Single
Dim y As Integer
y=5
c=Val(InputBox("Введи С:"))
if  c=0  Then
        MsgBox("Функция не существует!")
 else
        f=y/c
        MsgBox("функция="+str(f))
end if
end sub

2)     Инструкция Select  Case
Формат:
Select  Case  выражение
     Case   списокВыражений-1
            инструкции
        . . .
     Case   списокВыражений-n
             инструкции
     [Case  else
             инструкции]
End  Select
Например, необходимо определить  значение скидки, обработав значение переменной UnOrder следующим образом:
Select Case UnOrder
    Case   1
            Discount=0
     Case  2, 3
            Discount=0.1
     Case   4 To 6
            Discount=0.2
      Case    Is>6
            Discount=0.5
  End Select

3)     Цикл  For ...Next
Формат:
For счетчик=начало То конец [Step  шаг]
         инструкции
Next
Счетчик - любая числовая переменная.
Например, вычислим функцию f=a*x2,где а=3,а переменная х =[1,5], шаг=1
Sub prim2()
Dim a,x,f As Integer
a=3
For   x=1 To 5
     f=a*x^2
     MsgBox("X="+str(x)+"   F="+str(f))
Next
End Sub

4)     Цикл  While ... Wend
Формат:
While условие
     инструкции
Wend
Реализуем предыдущий пример, но таблица выводится по-другому:
Tabvivoda=""    ' Переменная, в которой формируется таблица  для вывода
x=1
While x<=5
    f=a*x^2
    Tabvivoda=Tabvivoda+"X="+str(x)+"  F="+str(f))+Chr(13)
    x=x+1
Wend
R=MsgBox(Tabvivoda, 0, "ТAБЛИЦА РАСЧЕТОВ")

5)     Цикл  Do ... Loop
Эта инструкция имеет четыре варианта синтаксиса:
?    Синтаксис 1:
     Do While  условие нахождения в цикле
            инструкции
     Loop
?     Синтаксис 2:
     Do Until  условие выхода из цикла
            инструкции
     Loop
?    Синтаксис 3:
     Do
            инструкции
     Loop  While  условие нахождения в цикле
?    Синтаксис 4:
     Do 
           инструкции
     Loop  Until  условие выхода из цикла

Инструкция применяется аналогично While ...Wend. Например, вычислим сумму значений последовательности, вводимой с клавиатуры:
Sub Prim3()
Dim a,s As Single    ' a- элемент последовательности,_
 s- вычисляемая сумма
Dim rez As Integer
s=0
Do
a=Val(InputBox("Введи элемент последовательности:"))
s=s+a
rez=MsgBox("Будешь ещё вводить?", VbYesNo, "Нажми кнопку")
Loop Until rez=VbNo
rez=MsgBox("Сумма="+Str(s) , 0 , "Результаты расчета")
End Sub



Порядок выполнения:

1.     Откройте базу данных.
2.     Создайте в модуле процедуру Sub для вычисления таблицы значений функции F=a.|x3|+a2.x для а=3, х изменяется на интервале от -4 до 4 с шагом 2. Для этого:
?    в окне базы данных перейти в закладку Модули и шелкнуть кнопку Создать. Ассess откроет окно проектирования модуля.
?    Вызовите команду процедура из меню Вставка. В появившемся диалоговом окне нажмите селективную кнопку Подпрограмма и  введите имя создаваемой процедуры. Введите текст программы для решения поставленной задачи.
?    проведите компиляцию загруженного модуля. Если при компиляции будут выявлены ошибки, то их надо исправить.
?    После успешной компиляции выполните созданную процедуру и просмотрите результаты.
3.     Подключите созданную процедуру к кнопке в форме. Для этого:
?    перейдите в закладку Формы и создайте в режиме Конструктор новую форму.
?    В ней создайте кнопку. В окне создания кнопки не выбирайте действий, связанных с ее нажатием, щелкните кнопку Отмена .
?    В свойствах для созданной кнопки перейдите в закладку События и для опции Нажатие кнопки выберите значение Процедура обработки событий.
?    В текст процедуры обработки событий вставьте вызов процедуры Sub.
?    проверьте действие кнопки.
4. Скорректируйте созданную процедуру  для расчета трех таблиц значений функции f при разных параметрах а=-2,4,7. Для этого организуйте внешний цикл ввода параметра а, отладьте скорректированную процедуру. Рекомендуется вывод таблиц организовать в окно Msgbox в виде  таблиц целиком.
5.     Создайте в модуле функцию для обработки последовательности вводимой с клавиатуры. Задание выберите в соответствии с вариантом.
6.     В созданную ранее форму вставьте поле и организуйте вывод результата созданной функции в это поле.

Варианты задания
1.     Определить максимальный элемент среди отрицательных.
2.     Вычислить среднее арифметическое отрицательных чисел.
3.     Определить количество чисел, значение которых кратно 3.
4.     Вычислить сумму положительных четных чисел.
5.     Определить минимальный элемент среди положительных.
6.     Определить количество отрицательных чисел.
7.     Определить среднее арифметическое положительных чисел.
8.     Определить сколько четных чисел в последовательности.
9.     Определить сумму максимального и минимального элементов последовательности.
10.     Вычислить сумму чисел, значение которых кратно 5.

Категория: Microsoft Access | Добавил: Администратор (11.01.2011)
Просмотров: 5117 | Теги: Основы программирования на Visual B | Рейтинг: 5.0/1
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Добавь новость

Добавьте свою новость на сайт.

Добавить
Самое интересное
Для отображения блока требуется Flash Player

seo контент бесплатно оптимизация яндекс тиц сереты база данных Microsoft_Access прибыль САЙТ - ПОСЕТИТЕЛИ ИЛИ КОНТЕНТ Дорвей обман поисковая система Раскрутка smm smo мультимедиа раскрутка сайта видео уроки Оптимизация сайта и анализ Microsoft Access база панель управления проектирование Основы программирования на Visual B google RRS коментарии ррс свежие новости быстродействие китай новости Открытие объекта Recordset предоста установка мета уроки Joomla ВИДЕО установка Joomla локальный Мавроди Ммм пирамида бонусное видео внимание предупреждение инструменты настройка компоненты модули плагины Joomla pr ап последний категории материалы разделы животные в природе обои анализ pagepromoter platinum комплекс продвижение контент плагиат сайт автоматически каталоги продвинуть регистрация ftp клиент сервер размножение генератор robot.txt видимость сайта посковая система рамблер шаблон joomla Скачать бесплатно скачать бесплатно необьяснимое нло пришельцы фото пришельцев dle DSL шаблоншаблон море океан Природа - коллекция обоев авто мото обои HD качества новый год праздник 3d разное
Поиск
Обратная связь
Вход