Автор: Пользователь скрыл имя, 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
Приложения……………………………………………………………………...
Закрытая (Private) переменная сохраняет свое значение, только пока выполняется процедура, в которой эта переменная описана. При завершении процедуры значение переменной теряется, и при повторном запуске процедуры его надо заново инициализировать. Переменные, описанные оператором Static, сохраняют свое значение по выходу из процедуры, пока работает программа.
Для
обязательного объявления всех переменных
в начале модуля, в так называемой области
модуля General Declarations, надо поместить директиву
Option Explicit. Использование этой директивы
не допускает возможности неправильного
ввода имени переменной, которая применяется
в одной или не - скольких процедурах
модуля. Например, если переменная была
объявлена как Ставка, а в коде при наборе
вместо русской буквы с была использована
латинская буква с, то это приведет к ошибке.
В отсутствие директивы Option Explicit подобную
ошибку было бы трудно отследить.
Как и в других языках программирования, в 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.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.
Операторы сравнения для условных выражений
Операция | Знак |
Меньше | < |
Меньше или равно | <= |
Больше | > |
Операция | Знак |
Больше или равно | >= |
Равно | = |
Не равно | <> |
Над условными выражениями можно выполнять действия логической математики (логические операции). К логическим побитовым операциям относятся операции And, Or, And Also, Or Else, Xor, Not.Операция Not имеет один операнд, остальные – по два операнда.
Ключевые слова IF и End If имеют тот же смысл, что и в конструкции If...Then. Если заданное в конструкции условие не выполняется (результат проверки равен False), и конструкция содержит ключевое слово Else, Visual Basic выполнит последовательность конструкций, расположенных следом за Else. После чего управление перейдет к конструкции, следующей после End If.
В 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