Название: Программирование на VBA в среде MS Excel
Вид работы: реферат
Рубрика: Информатика и программирование
Размер файла: 35.85 Kb
Скачать файл: referat.me-136475.docx
Краткое описание работы: Программа на языке VBA, которая выводит исходные данные на экран и выполняет расчеты и предназначена для учета на складе мастерской индивидуального пошива. Описание переменных и алгоритма программы. Листинг программы, примеры произведенных расчетов.
Программирование на VBA в среде MS Excel
Федеральное агентство по образованию
Государственное образовательное учреждение
Высшего профессионального образования
Московский государственный индустриальный университет
(ГОУ МГИУ)
Кафедра информационных технологий и систем в экономике и управлении
Реферат
по специальности "Информатика"
на тему "Программирование на VBA в среде MS Excel""
Группа 08Ф21
Студент Л.Н. Ибатуллина
Руководитель проекта,
доцент, к.э.н. С.В. Суворов
Москва – 2009
Содержание
Задание на курсовую работу
Описание переменных
Описание алгоритма
Листинг программы
Список литературы
Задание на курсовую работу
На складе мастерской индивидуального пошива имеются запасы 12-ти видов ткани. За каждый рабочий день (6 дней) расходилось некоторое кол-во ткани каждого вида.
Написать программу на языке VBA, которая выводит исходные данные, выполняет расчеты и выводит на экран:
· Исходные данные в виде таблицы, где перечисленные наименования ткани, цена ткани, расход каждого вида ткани каждый день в метрах.
· Расход каждого вида ткани за неделю.
· Стоимость всей израсходованной ткани за день.
· Общая стоимость всей израсходованной ткани за неделю.
· Наименование самой ходовой ткани.
Описание переменных
Исходные данные находятся на листе "исх_д." и содержат следующую информацию:
Naz (12) - наименование ткани
Dimnaz (12) AsString
Cena (12) - стоимость ткани за м.
Dimcena (12) AsDouble
Ras (12,6) - расход каждого вида ткани каждый день в метрах
Dimras (12,6) AsDouble
Traiti (12,8) - стоимость каждого вида ткани за день
Dimtrati (12,6) AsDouble
o_stoim - общая стоимость всей израсходованной ткани за неделю
Dimo_stoimAsDouble
o_ras (12) - общий расход каждого вида ткани за неделю в м.
Dimo_ras (12) AsDouble
o_trati (6) - общая стоимость всей израсходованной ткани за день
Dimo_trati (6) AsDouble
I, j - вспомогательные переменные счетчики цикла являющимися целыми числами
Max, k - вспомогательная переменная для нахождения самой "ходовой" ткани
![]() |
Блок - схема
нет
да
![]() |
Описание алгоритма
Ввод начальных (нулевых) значений для расчетных величин (стоимость израсходованной ткани за день, расход за неделю, общая стоимость всей израсходованной ткани за неделю, цена каждого вида ткани).
Чтение с листа "Исходные данные" значение в naz (12) и ras (12,6).
Расчет расхода каждого вида ткани за неделю производиться путем сложения расходов ткани ежедневно. Организуется два вложенных цикла. Во внутреннем цикле суммируется расход ткани по каждому дню, после выхода из внутреннего цикла выводиться результат по тканям.
Определение стоимости всей израсходованной ткани за день производиться путем умножения цены ткани на количество израсходованной ткани. Организуется два вложенных цикла. Во внутреннем перемножается стоимость ткани и ее количество, после выхода из внутреннего цикла выводится результат по каждой ткани.
Расчет общей стоимости всей израсходованной ткани каждого вида за неделю производится путем сложения стоимости израсходованной ткани по дням. Организуется два вложенных цикла. Во внутреннем цикле суммируется стоимость всей израсходованной ткани за день, после выхода из внутреннего цикла выводится результат по всем тканям.
Определение самой "Ходовой ткани". Для этого используется два массива одинаковой размерности: "ras (12)" - в котором лежат количественные значения и "naz (12)" - в котором лежат названия тканей, а также две переменных "max" - в которой лежит максимальное значение ткани и "k " - порядковый номер ячейки с максимальным значением израсходованной ткани. На первом шаге мы предполагаем, что в первой ячейке массива "o_ras (i) находиться максимальное значение ложем его в переменную "max" и записываем номер ячейки в "k". На втором шаге мы начинаем сравнивать значение, содержащееся в "max" со значениями остальных ячеек, начиная с первой. Если мы нашли, что в какой - то ячейке значение больше, чем "max", то тогда это значение ложем в переменную "max" и записываем номер ячейки в "k".После того как мы прошли весь массив "ras (12)" и нашли максимальное значение, помощи переменной "k " мы берем из массива naz (12) наименование самой расходуемой ткани.
Листинг программы
Private Sub CommandButton1_Click ()
'объявление и обнуление
'Сначала объявляем переменные, используемые в программе.
Dim naz (12) As String
Dim cena (12) As Double
Dim ras (12,6) As Double
Dim o_ras (12) As Double
Dim o_trati (6) As Double
Dim trati (12,6) As Double
Dim o_stoim As Double
Dim k As Integer
Dim max As Double
'Далее всем переменным присваивается нулевое значение.
For i = 0 To 11
o_ras (i) = 0
Next i
For j = 0 To 5
o_trati (j) = 0
Next j
o_stoim = 0
'ввод данных
For i = 0 To 11
naz (i) = Worksheets ("исходные данные").Cells (4 + i, 1)
cena (i) = Worksheets ("исходные данные").Cells (4 + i,
2)
Next i
For i = 0 To 11
For j = 0 To 5
ras (i, j) = Worksheets ("исходные данные").Cells (4 + i, 3 + j)
Next j
Next i
'решение
'Находим "общий расход" каждого вида ткани за неделю
For i = 0 To 11
For j = 0 To 5
o_ras (i) = o_ras (i) + ras (i, j)
Next j
Next i
'находим стоимость каждого вида ткани за день
For i = 0 To 11
For j = 0 To 5
trati (i, j) = cena (i) * ras (i, j)
Next j
Next i
'находим общую стоимость всей израсходованной ткани за день
For j = 0 To 5
For i = 0 To 11
o_trati (j) = o_trati (j) + trati (i, j)
Next i
Next j
'находим общую стоимость всей израсходованной ткани за неделю
For j = 0 To 5
o_stoim = o_stoim + o_trati (j)
Next j
k = 0
'максимуму присваиваем o_ras (k)
max = o_ras (k)
For i = 1 To 11
If o_ras (i) > max Then
max = o_ras (i)
k = i
End If
Next i
'вывод
'На листе "результат" в ячейку с определенным номером вводится ее название
Worksheets ("результат").Cells (2, 1) = "Название изделия"
Worksheets ("результат").Cells (2,2) = "Цена 1м."
Worksheets ("результат").Cells (2,6) = "Расход"
Worksheets ("результат").Cells (3,3) = "1-ый день"
Worksheets ("результат").Cells (3,4) = "2-ой день"
Worksheets ("результат").Cells (3,5) = "3-ий день"
Worksheets ("результат").Cells (3,6) = "4-ый день"
Worksheets ("результат").Cells (3,7) = "5-ый день"
Worksheets ("результат").Cells (3,8) = "6-ой день"
Worksheets ("результат").Cells (3,11) = "общий расход"
Worksheets ("результат").Cells (20,5) = "траты"
Worksheets ("результат").Cells (34, 1) = "общие траты"
Worksheets ("результат").Cells (35, 1) = " общая стоимость"
Worksheets ("результат").Cells (36,2) = naz (k)
Worksheets ("результат").Cells (36, 1) = "самая ходовая ткань"
'В этом фрагменте происходит вывод на рабочий лист общего расхода
For i = 0 To 11
Worksheets ("результат").Cells (4 + i, 1) = naz (i)
Worksheets ("результат").Cells (4 + i,
2) = cena (i)
Next i
For i = 0 To 11
For j = 0 To 5
Worksheets ("результат").Cells (4 + i, 3 + j) = ras (i, j)
Worksheets ("результат").Cells (35,2) = o_stoim
Worksheets ("результат").Cells (34,2) = o_trati
Next j
Next i
For i = 0 To 11
For j = 0 To 5
Worksheets ("результат").Cells (22 + i, 2 + j) = trati (i, j)
Next j
Next i
End Sub
Private Sub CommandButton2_Click ()
Worksheets ("результат").Cells.Clear
End Sub
Таблица 1.
Название изделия | Цена 1м. | Расход | |||||
1-ый день | 2-ой день | 3-ий день | 4-ый день | 5-ый день | 6-ой день | ||
Хлопок | 95 | 2 | 6 | 3 | 4 | 2 | 3 |
Шелк | 110 | 4 | 7 | 4 | 5 | 6 | 3 |
Атлас | 70 | 6 | 3 | 2 | 4 | 3 | 5 |
Кашемир | 120 | 1 | 6 | 5 | 3 | 4 | 4 |
Лён | 100 | 3 | 4 | 4 | 2 | 3 | 3 |
Вельвет | 65 | 8 | 5 | 2 | 1 | 3 | 5 |
Драп | 55 | 7 | 3 | 3 | 2 | 4 | 2 |
Шерсть | 75 | 3 | 2 | 4 | 4 | 2 | 1 |
Лаке | 90 | 6 | 5 | 3 | 5 | 3 | 2 |
Мохер | 80 | 4 | 2 | 1 | 3 | 4 | 3 |
Органза | 85 | 9 | 7 | 3 | 2 | 6 | 4 |
Деним | 60 | 4 | 2 | 3 | 1 | 4 | 3 |
|
Очистить |
Таблица 2.
Название изделия | Цена 1м | Расход | ||||||
1-ый день | 2-ой день | 3-ий день | 4-ый день | 5-ый день | 6-ой день | общий расход | ||
Хлопок | 95 | 2 | 6 | 3 | 4 | 2 | 3 | 20 |
Шелк | 110 | 4 | 7 | 4 | 5 | 6 | 3 | 29 |
Атлас | 70 | 6 | 3 | 2 | 4 | 3 | 5 | 23 |
Кашемир | 120 | 1 | 6 | 5 | 3 | 4 | 4 | 23 |
Лён | 100 | 3 | 4 | 4 | 2 | 3 | 3 | 19 |
Вельвет | 65 | 8 | 5 | 2 | 1 | 3 | 5 | 24 |
Драп | 55 | 7 | 3 | 3 | 2 | 4 | 2 | 21 |
Шерсть | 75 | 3 | 2 | 4 | 4 | 2 | 1 | 16 |
Лаке | 90 | 6 | 5 | 3 | 5 | 3 | 2 | 24 |
Мохер | 80 | 4 | 2 | 1 | 3 | 4 | 3 | 17 |
Органза | 85 | 9 | 7 | 3 | 2 | 6 | 4 | 31 |
Деним | 60 | 4 | 2 | 3 | 1 | 4 | 3 | 17 |
Таблица 3.
Цена 1м | траты | |||||||
1-ый день | 2-ой день | 3-ий день | 4-ый день | 5-ый день | 6-ой день | общий расход | ||
Хлопок | 190 | 570 | 285 | 380 | 190 | 285 | 475 | 2185 |
Шелк | 440 | 770 | 440 | 550 | 660 | 330 | 440 | 3190 |
Атлас | 420 | 210 | 140 | 280 | 210 | 350 | 140 | 1330 |
Кашемир | 120 | 720 | 600 | 360 | 480 | 480 | 600 | 3240 |
Лён | 300 | 400 | 400 | 200 | 300 | 300 | 300 | 1900 |
Вельвет | 520 | 325 | 130 | 65 | 195 | 325 | 65 | 1105 |
Драп | 385 | 165 | 165 | 110 | 220 | 110 | 220 | 990 |
Шерсть | 225 | 150 | 300 | 300 | 150 | 75 | 150 | 1125 |
Лаке | 540 | 450 | 270 | 450 | 270 | 180 | 270 | 1890 |
Мохер | 320 | 160 | 80 | 240 | 320 | 240 | 80 | 1120 |
Органза | 765 | 595 | 255 | 170 | 510 | 340 | 255 | 2125 |
Деним | 240 | 120 | 180 | 60 | 240 | 180 | 120 | 900 |
общие траты | 4465 | 4635 | 3245 | 3165 | 3745 | 3195 | 3115 | 21100 |
общая стоимость | 28155 | 28155 | 28155 | 28155 | 28155 | 28155 | 28155 | 168930 |
самая ходовая ткань | Органза |
Список литературы
1. Иванов М. И, Суворов С.В. Информатика. Часть2. Программирование. - Москва 2004.
2. Конспект курса лекционных и практических занятий в МГИУ.
Похожие работы
-
Создание базы данных
Авторизация с каталогами проектирования базы данных магазина. Задачи базы данных: учет всех товаров, поиск и выдача данных о клиентах, адрес, телефоны, цена и наличие товара. Этапы проектирования базы данных. Схема данных, создание запросов и их формы.
-
Составление и описание программы по заданным параметрам
Характеристика программы на языке VBA, которая вводит исходные данные, выполняет расчеты и выводит результаты на экран. Описание переменных в программе, ее блок-схема и алгоритм работы. Листинг программы. Описание входных данных и результат вычислений.
-
Лабараторная работа №4
Цель работы: изучение правил записи констант, переменных, выражений, операторов присваивания, раздела определения констант, раздела описания переменных и общей структуры программы на языке Turbo-Pascal.
-
Алгоритмизация и програмирование
РЕФЕРАТ ояснительная записка содержит 15 листов, 2 рисунка, 3 использованных источника, 1 приложение. СТРУКТУРА ЭВМ, СХЕМА АЛГОРИТМА, ПРОГРАММА, РЕЗУЛЬТАТЫ РАСЧЕТОВ
-
Язык программирования высокого уровня С++
Характеристика основных разделов программирования, изучаемых в курсе программирования на языке С++. Описание внутренних переменных, входных и выходных данных. Особенности использования компилятора Microsoft Visual Studio 2008. Руководство пользователя.
-
Разработка формата хранения данных программ и решение задач
Файл - именованная область внешней памяти ПК. Процедуры и функции языка Pascal для работы с файлами прямого и последовательного доступа. Классификация файлов по типу доступа к элементам. Обоснование выбора средств программной реализации блоков.
-
Разработка алгоритма и программы для вычисления коэффициента оперативной готовности системы
Вычисление физических параметров реальной электрической цепи посредством преобразования её к эквивалентной. Схема алгоритма программы и ее разработка на языках программирования СИ и С++, результаты расчета зависимостей эквивалентных сопротивлений.
-
Регрессионные зависимости
Вычисление значений регрессионно-авторегрессионной зависимости заданного выражения линейного программирования. Графическое представление математической модели в виде уравнения регрессии. Принципи оптимизации производственных и коммерческих операций.
-
Примеры решения задач по программированию
Написание программы вычисления сопротивления электрической цепи, состоящей из двух параллельно и двух последовательно соединенных сопротивлений. Схема машинного алгоритма по условию задачи. Применение операций при написании программ на языке C/C++.
-
Планирование работ в вычислительных системах по критерию минимального суммарного времени выполнения работ
Составление алгоритма и программы для факторизации целого числа N с помощью ро-метода Полларда. Краткое описание данного метода: составление последовательности, вычисление разности и наибольшего общего делителя. Алгоритм работы и листинг программы.