Использование языка программирования VBA

Автор: Пользователь скрыл имя, 09 Февраля 2011 в 15:34, курсовая работа

Описание работы

Цель исследования. Выявить и обосновать характеристики и особенности методов применения объектно-ориентированного языка программирования VBA при организации проектной деятельности учащихся старших классов.

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

Содержание

Введение …………………………………………………………………………..3
Описание языка VBA и системы программирования в Office…………….5
1.1.Типы данных………………………………………………………………….5

Описание переменных………………………………………………………6
Описание массивов…………………………………………………………..8
Операторы языка и управляющие конструкции…………………………..9
Операторы языка и управляющие конструкции…………………………..11
2. Решение задачи-теста для написания и отладки программы…………….14

3. Анализ полученных результатов……………………………………………17

4. Инструкция пользователю и описание программы………………………18

Описание переменных…………………………………………………….18
Входные и выходные данные…………………………………………….19
Подробное описание задач……………………………………………….20
4.3.1.Составление ведомости расчета прибыли от товара………………….21

Модель управления запасами ………………………………………….21
Задание на нахождение оптимального раскроя………………………22
База данных………………………………………………………………24
4.4.Описание интерфейса………………………………………………………27

Функция пользователя……………………………………………………28
Переменные и постоянные……………………………………………….30
Стандартные функции пользователя для работы с массивами и матрицами……………………………………………………………………….30
Объекты, свойства и методы VBA………………………………………..31
Операторы цикла………………………………………………………….32
Заключение………………………………………………………………………32

Список литературы…………………………………………………………….34

Приложения……………………………………………………………………...

Работа содержит 1 файл

Курсовая по VBA.doc

— 701.00 Кб (Скачать)
  • переменные уровня процедуры распознаются только в процедуре, в которой они описаны. Они описываются при помощи инструкций Dim или Static. Такие переменные называются локальными;
  • переменные уровня модуля используются только в модуле, в котором они описаны, но не в других модулях данного проекта. Описываются при помощи оператора Dim или Private в области описания модуля, т.е. перед описанием процедур;
  • переменные уровня модуля, описанные при помощи инструкции Public, являются доступными для всех процедур проекта. Такие переменные называются открытыми.

    Закрытая (Private) переменная сохраняет свое значение, только пока выполняется процедура, в которой эта переменная описана. При завершении процедуры значение переменной теряется, и при повторном запуске процедуры его надо заново инициализировать. Переменные, описанные оператором Static, сохраняют свое значение по выходу из процедуры, пока работает программа.

    Для обязательного объявления всех переменных в начале модуля, в так называемой области модуля General Declarations, надо поместить директиву Option Explicit. Использование этой директивы не допускает возможности неправильного ввода имени переменной, которая применяется в одной или не - скольких процедурах модуля. Например, если переменная была объявлена как Ставка, а в коде при наборе вместо русской буквы с была использована латинская буква с, то это приведет к ошибке. В отсутствие директивы Option Explicit подобную ошибку было бы трудно отследить.  

    1. Описание  массивов

    Как и в других языках программирования, в VBA можно использовать массивы. Массив, как и любую переменную, надо объявлять, используя операторы Dim, Static, Private и Public, которые также задают область видимости переменной. В массиве допускается описание до 60 размерностей. При определении размерности надо указывать верхнюю, а также нижнюю границу. Если нижний индекс не задан явно, нижняя граница массива определяется директивой Option Base. Если отсутствует директива Option Base, нижняя граница массива равняется нулю. Например, в следующем операторе объявляется одномерный массив (вектор) из 12 целых чисел, причем по умолчанию первый элемент массива – А (0), а последний – А (11). В этом случае говоря, что 0 – базовый индекс.

    Dim А (11) As Integer

    Данный  же оператор объявляет двухмерный массив 3´3 (матрицу), состоящий из действительных чисел.

    Dim B (2, 2) As Single

    Можно изменить базовый индекс, написав  в области объявлений модуля директиву  Option Base 1. После этого индексы массивов А и В будут начинаться с единицы. Например, в следующем операторе объявляется вектор, состоящий из 11 элементов.

    Option Base 1

    Dim A (11) As Integer

    Другим  способом изменения базового индекса  является использование ключевого  слова То при объявлении массива.

    Dim B (1 To 3, 1 To 3) As Single

    Dim A (1 To 12) As Integer

    Инициализацию элементов массива можно производить  по-разному:

  • последовательностью операторов:

    Dim B (1, 1) As Single

    B (0, 0) = 2 : B (0, 1) = 4

    B (1, 0) = 1 : B (1, 1) = 6

  • оператором цикла:

    Dim M (1 To 9, 1 To 9) As Integer

    Dim i As Integer

    Dim j As Integer

    For i = 1 To 9

    For j = 1 To 9

    M (i, j) = i * j

    Next

    Next

    Иногда  в процессе выполнения программы  требуется изменять размер массива. В этом случае первоначально массив объявляют как динамический. Для этого при объявлении массива не надо указывать размерность, например:

    Dim R () As Single

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

    Dim R () As Double

    ReDim R (1 To 10) 

    1. Операторы языка и управляющие  конструкции

      Математические  операторы позволяют выполнять  в программе действия над числами. В таблице 1.2 приведены арифметические операторы и выполняемые ими функции. 

Таблица 1.2.

Префиксы, используемые в наименованиях переменных

Операция Знак Запись  Типы данных  Действие
Сложение + a + b Byte, Short, Integer, Long, Single, Double, Decimal Складывает  два числа
Вычитание - a - b Byte, Short, Integer, Long, Single, Double, Decimal Вычитает из одного

числа другое

Деление / a/b Byte, Short, Integer, Long, Single, Double, Decimal Делит два числа  и

возвращает  результат

с плавающей  точкой

Деление

 нацело

\ a\b Byte, Short, Integer, Long, Single, Double, Decimal Делит два числа  и

возвращает  целый результат (остаток отбрасывается)

Остаток Mod a Mod b Byte, Short, Integer, Long, Single, Double, Decimal Вычисляется остаток

от деления  одного числа на другое

Умножение * а * b Byte, Short, Integer, Long, Single, Double, Decimal Умножает два  числа
Возведение

в степень

^ a ^ b Byte, Short, Integer, Long, Single, Double, Decimal Возводит число  в степень
 

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

  • возведение в степень;
  • умножение и деление;
  • деление нацело;
  • взятие остатка от деления;
  • сложение и вычитание.

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

      В VBA, как и во всех языках программирования, существуют управляющие конструкции, предназначенные для управления порядком выполнения команд. Различают два основных типа управляющих операторов:

    - If

    - Select..Case

    Конструкция If используется в том случае, когда необходимо, чтобы группа операторов выполнялась при соблюдении определенных условий. Конструкция Select..Case позволяет на основании анализа значения заданного выражения выполнять те или иные действия.

    В свою очередь, управляющие операторы  if бывают двух видов:

    - If...Then

    - If...Then...Else

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

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

      Условные  выражения – это такие выражения, которые возвращают одно из двух значений: Истина или Ложь. В условных выражениях используют операторы сравнения, приведенные  в таблице 1.3. 

      Таблица 1.3.

Операторы сравнения для условных выражений

Операция Знак
Меньше <
Меньше  или равно <=
Больше >
Операция Знак
Больше  или равно >=
Равно =
Не  равно <>
 

    Над условными выражениями можно  выполнять действия логической математики (логические операции). К логическим побитовым операциям относятся операции And, Or, And Also, Or Else, Xor, Not.Операция Not имеет один операнд, остальные – по два операнда.

    Ключевые  слова IF и End If имеют тот же смысл, что и в конструкции If...Then. Если заданное в конструкции условие не выполняется (результат проверки равен False), и конструкция содержит ключевое слово Else, Visual Basic выполнит последовательность конструкций, расположенных следом за Else. После чего управление перейдет к конструкции, следующей после End If.

    1. Операторы языка и управляющие конструкции

    В VBA имеется ряд функций и операторов по работе с файлами и каталогами. Одним из удобств является то, что не требуется устанавливать ссылку на используемую библиотеку. В таблице 1.4. эти функции и представлены.

      Таблица 1.4.

Функции и операторы для работы с файлами

Функция, оператор  Назначение
Open Открывает файл
Close Закрывает все  файлы
Close # Закрывает файл по идентификатору
Reset Закрывает все  открытые файлы, записывает содержимое буферов.
Print tt Записывает  данные в файл
FileCopy Копирует файл
EOF Определяет  метку конца файла
FileAttr Возвращает  режим доступа открытого файла
FileDateTime Возвращает  дату и время создания файла
FileLen Возвращает  размер файла в байтах
FreeFile Возвращает  номер свободного идентификатора
GetAttr Получает атрибуты файла
SetAttr Устанавливает атрибуты файла
Loc Возвращает  номер текущей позиции в файле
LOF Возвращает  размер открытого файла в байтах
Seek Устанавливает на заданную номером позицию или  запись в файле
Dir Возвращает  содержимое текущей папки
Kill Удаляет файл
Lock Блокирует файл при работе в многопользовательской  среде
Unlock Снимает блокировку файла в многопользовательской  среде
Name Задает имя  файла
Get # Читает данные из файла
Input Читает данные из файла
Input # Читает данные из файла
Line Input # Читает строку из файла
Put # Записывает  данные в файл
Write # Записывает  данные в файл

Информация о работе Использование языка программирования VBA