Программирование на VBA в среде MS Excel

Написание программы на языке VBA, которая вводит исходные данные, выполняет расчеты и выводит на экран: исходные данные в виде таблицы, где указаны наименования фруктово-ягодных культур, закупочные цены каждой культуры и урожай в центнерах в каждом году.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 25.11.2011
Размер файла 3,3 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

2

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ

Государственное образовательное учреждение

высшего профессионального образования

Московский государственный индустриальный университет

(ГОУ МГИУ)

Кафедра бухгалтерского учета, анализа и аудита

Курсовая работа

по специальности «Информатика»

на тему «ПРОГРАММИРОВАНИЕ НА VBA В СРЕДЕ MS EXCEL»

вариант № 7

Группа 10Б21

Студент

И.В. Баженова

Руководитель проекта, доцент, к.э.н.

С.В. Суворов

ДОПУСКАЕТСЯ К ЗАЩИТЕ

Заведующий кафедрой

С.В. Суворов

доцент, к.э.н.

Оценка

Москва 2011

Оглавление

Задание на курсовую работу

Описание переменных

Блок-схема

Описание алгоритма

Листинг программы

Описание вводных данных и результат вычислений

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

Задание на курсовую работу

В коллективном хозяйстве имеются фруктово-ягодные сады (яблоня, вишня, слива, черная смородина, крыжовник, клубника - всего 6 фруктово-ягодных культур). Каждый год в течение 5 лет колхоз собирал урожай с каждого сада и продавал урожай по закупочным ценам, которые различались по годам. написание программа vba

Написать программу на языке VBA, которая вводит исходные данные, выполняет расчеты и выводит на экран:

· Исходные данные в виде таблицы, где указаны наименования фруктово-ягодных культур, закупочные цены каждой культуры и урожай в центнерах в каждом году;

· Общий урожай каждой культуры за 5 лет;

· Доход по всем культурам за каждый год;

· Общий доход колхоза за 5 лет;

· Наименование культуры, принесшей максимальный доход за 5 лет.

Описание переменных

В программе переменные описаны следующим образом Dim urozhay(6, 5) As Integer

- урожай в центнерах за каждый год по всем 6 фруктово-ягодным культурам

Dim cena(6, 5) As Single

- закупочные цены каждой культура по всем 5 годам

Dim urozhay_ob(6) As Integer

- общий урожай по каждой культуре за 5 лет

Dim dohod_kultura(6) As Single

- доход за все 5 лет по каждой культуре

Dim dohod_god(5) As Single

- доход по всем культурам за каждый год

Dim dohod_obschiy As Single

- общий доход колхоза за 5 лет

Dim Max As Single

- максимум среди дохода за все 5 лет по каждой культуре в дальнейшем понадобится для нахождения наименование культуры принесшей максимальный доход за 5 лет

Dim index1 As Integer

- переменная необходима для вывода на экран названия культуры принесшей максимальный доход за 5 лет

Dim Naimenovanie(6) As String

- наименование культур для сортировки

Dim naim As String

- переменная для упорядочивания наименования

Dim ur As Integer

- переменная для упорядочивания общего урожая

Dim i, j As Integer

- переменные счетчиков цикла

Блок-схема

Размещено на http://www.allbest.ru/

2

Описание алгоритма

Зарезервируем память для хранения переменных и массивов:

Dim urozhay(6, 5) As Integer - урожай в центнерах за каждый год по всем 6 фруктово-ягодным культурам

Dim cena(6, 5) As Single - закупочные цены каждой культура по всем 5 годам

Dim urozhay_ob(6) As Integer - Общий урожай по каждой культуре за 5 лет

Dim dohod_kultura(6) As Single - доход за все 5 лет по каждой культуре

Dim dohod_god(5) As Single - доход по всем культурам за каждый год

Dim dohod_obschiy As Single - общий доход колхоза за 5 лет

Dim Max As Single - максимум среди дохода за все 5 лет по каждой культуре в дальнейшем понадобится для нахождения наименование культуры принесшей максимальный доход за 5 лет

Dim index1 As Integer - переменная необходима для вывода на экран названия культуры принесшей максимальный доход за 5 лет

Dim Naimenovanie(6) As String - наименование культур для сортировки

Dim naim As String - переменная для упорядочивания наименования

Dim ur As Integer - переменная для упорядочивания общего урожая

Dim i, j As Integer - переменные счетчиков цикла

Прировняем общий доход колхоза за 5 лет нулю. Создаем цикл для всех видов культур что бы обнулить общий урожай. Затем создаем цикл на 5 лет, доход за каждый год обнуляем.

Создаем внешний цикл для 6 видов культур, затем создаем внутренний цикл для 5 лет, занесем данные с экрана в массив об урожае в центнерах за каждый год по всем 6 культурам, занесем данные с экрана в массив о закупочных ценах каждой культуры по всем 5 годам. Одновременно просуммируем общий урожай каждой культуры за 5 лет. Посчитаем доход за все 5 лет по каждой культуре. После вывода из внутреннего цикла выведем на экран в 12 столбец массив UROZHAY_OB. Выходим из внешнего цикла.

Создаем внешний цикл за 5 лет и внутренний для 6 видов культур. Считаем доход за каждый год. Выходим из внутреннего цикла. Выводим доход за каждый год. Доход за 5 лет рассчитываем и выводим его. Выходим из внешнего цикла.

Для расчета самой выгодной культуры назначим максимумом первый элемент массива. Создадим цикл из 6 культур. Если максимум меньше или равен текущему элементу массива, максимумом становится текущий элемент массива, запоминает в переменную index1 номер элемента массива, в котором содержится максимум. Выходим из цикла. Выводим значение самой выгодной культуры.

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

Очищаем на 0 и 1 закупочные цены и урожаи за все года.

Создаем цикл из 6 культур. Заносим в массив наименование культур и общий урожай по каждой из культур. Покидаем цикл.

Создаем внешний цикл из 5 культур. Создаем внутренний и внешний цикл для сортировки культур по убыванию их урожайности. Если общий урожай одной культуры меньше общего урожая другой культуры то меняем их местами. Выходим из циклов.

Создаем цикл из 6 культур. Выводим наименование и их общего урожая в порядке их убывания.

Листинг программы

Sub kursovoe_zadanie 7()

Dim urozhay(6, 5) As Integer

'урожай в центнерах за каждый год по всем 6 фруктово-ягодным культурам

Dim cena(6, 5) As Single

'закупочные цены каждой культура по всем 5 годам

Dim urozhay_ob(6) As Integer

'Общий урожай по каждой культуре за 5 лет

Dim dohod_kultura(6) As Single

'доход за все 5 лет по каждой культуре

Dim dohod_god(5) As Single

'доход по всем культурам за каждый год

Dim dohod_obschiy As Single

'общий доход колхоза за 5 лет

Dim Max As Single

'максимум среди дохода за все 5 лет по каждой культуре

'в дальнейшем понадобится для нахождения наименование культуры

'принесшей максимальный доход за 5 лет

Dim index1 As Integer

'переменная необходима для вывода на экран названия культуры принесшей максимальный доход за 5 лет

Dim Naimenovanie(6) As String

'наименование культур для сортировки

Dim naim As String

'переменная для упорядочивания наименования

Dim ur As Integer

'переменная для упорядочивания общего урожая

Dim i, j As Integer

'переменные счетчиков цикла

dohod_obschiy = 0

For i = 1 To 6

urozhay_ob(i) = 0

Next i

For i = 1 To 5

dohod_god(i) = 0

Next i

For i = 1 To 6

'внешний цикл для 6 видов культур

For j = 1 To 5

'внутренний цикл для 5 лет

urozhay(i, j) = Cells(i + 3, j + 6)

'занесем данные с экрана в массив об урожае в центнерах за каждый год по всем 6 культурам

cena(i, j) = Cells(i + 3, j + 1)

'занесем данные с экрана в массив о закупочные цены каждой культуры по всем 5 годам

urozhay_ob(i) = urozhay_ob(i) + urozhay(i, j)

'одновременно просуммируем общий урожай каждой культуры за 5 лет

dohod_kultura(i) = dohod_kultura(i) + urozhay(i, j) * cena(i, j)

'доход за все 5 лет по каждой культуре

Next j

Cells(i + 3, 12) = urozhay_ob(i)

'после вывода из внутреннего цикла выведем на экран в 12 столбец массив UROZHAY_OB

Next i

For j = 1 To 5

' внешний цикл за 5 лет

For i = 1 To 6

'внутренний цикл для 6 видов культур

dohod_god(j) = dohod_god(j) + urozhay(i, j) * cena(i, j)

'считаем доход за каждый год

Next i

Cells(10, j + 6) = dohod_god(j)

'выводим доход за каждый год

dohod_obschiy = dohod_obschiy + dohod_god(j)

Cells(11, 12) = dohod_obschiy

Next j

Max = dohod_kultura(1)

'пусть максимумом будет первый элемент массива

For i = 1 To 6

'колисечество сравнивнений равно количеству элементов в массиве,

'на первом шаге сравниваем текущий элемент с самим собой

If Max <= dohod_kultura(i) Then

'тогда если максимум меньше или равно текущему элементу массива

Max = dohod_kultura(i)

'максимумом становится текущий элемент массива

index1 = i

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

End If

Next i

Cells(12, 12) = Cells(index1 + 3, 1)

'выводим значение самой выгодной культуры

End Sub

Sub ochistka()

Range("G10:K10").Value = " "

Range("L4:L9").Value = " "

Range("L11:L12").Value = " "

End Sub

Sub proverkaNa0()

Range("B4:K9").Value = "0"

End Sub

Sub proverkaNa1()

Range("B4:K9").Value = "1"

End Sub

Sub sortirovka()

For i = 1 To 6

Naimenovanie(i) = Cells(i + 3, 1)

urozhay_ob(i) = Cells(i + 3, 12)

Next i

For i = 1 To 5

For j = i + 1 To 6

If urozhay_ob(i) < urozhay_ob(j) Then

ur = urozhay_ob(i)

naim = Naimenovanie(i)

urozhay_ob(i) = urozhay_ob(j)

Naimenovanie(i) = Naimenovanie(j)

urozhay_ob(j) = ur

Naimenovanie(j) = naim

End If

Next j

Next i

For i = 1 To 6

Cells(i + 15, 1) = Naimenovanie(i)

Cells(i + 15, 2) = urozhay_ob(i)

Next i

End Sub

Sub zapolnit()

For j = 1 To 5

внешний цикл за 5 лет

For i = 1 To 6

'внутренний цикл для 6 видов культур

Cells(i + 3, j + 1) = 200

Next i

Next j

For j = 1 To 5

' внешний цикл за 5 лет

For i = 1 To 6

'внутренний цикл для 6 видов культур

Cells(i + 3, j + 6) = 20

Next i

Next j

End Sub

Описание вводных данных и результат вычислений

Вычислить.

Очистка

Сортировка.

Проверка на 1.

Проверка на 0.

Заполнить.

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

1.Иванов М.И., Суворов С.В. Информатика. Часть 2. Программирование. - Москва 2008.

Размещено на Allbest.ru


Подобные документы

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

    курсовая работа [680,3 K], добавлен 03.08.2009

  • Программа на языке VBA, которая вводит исходные данные, выполняет расчеты и выводит на экран. Лист с начальными данными. Ввод начальных (нулевых) значений для расчетных величин. Вспомогательные переменные, счетчики циклов. Формирование матрицы данных.

    курсовая работа [2,7 M], добавлен 01.12.2010

  • Программа на языке VBA, которая выводит исходные данные на экран и выполняет расчеты и предназначена для учета на складе мастерской индивидуального пошива. Описание переменных и алгоритма программы. Листинг программы, примеры произведенных расчетов.

    реферат [25,4 K], добавлен 10.12.2010

  • Характеристика программы на языке VBA, которая вводит исходные данные, выполняет расчеты и выводит результаты на экран. Описание переменных в программе, ее блок-схема и алгоритм работы. Листинг программы. Описание входных данных и результат вычислений.

    курсовая работа [721,4 K], добавлен 10.11.2010

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

    курсовая работа [1,8 M], добавлен 19.04.2011

  • Написание программы, которая вводит исходные данные, выполняет расчет и выводит на экран. Использование вспомогательных переменных и счетчиков циклов в программе. Расчет сумм заработков по каждому виду одежды за день, количества изготовленных деталей.

    курсовая работа [2,4 M], добавлен 17.01.2015

  • Написание программы "телеграф", который принимает от пользователя сообщения и выводит его на экран в виде последовательности точек и тире. Их вывод сортируется звуковым сигналом соответствующей длительности. Программа написана на языке Turbo Pascal.

    курсовая работа [565,6 K], добавлен 18.08.2008

  • Игра "Пятнашки": исходные данные, условия задачи и цели ее решения. Основные приемы программирования и типы данных, используемые при решении аналогичных задач. Для разработки программы использовался язык С и среда программирования Borland C++ Builder.

    курсовая работа [674,1 K], добавлен 03.07.2011

  • Расчеты по таблице перевозок грузов между отдельными регионами. Решение задачи управления процессами перевозок в среде Pascal. Решение задачи средствами MS Excel. Исходные данные и итоги по строкам и столбцам. Решение задачи средствами MATHCAD.

    курсовая работа [1,8 M], добавлен 25.03.2015

  • Работа с компонентом TTreeView, служащим для отображения иерархических данных в виде дерева. Обеспечение заполнения дерева, очистка, анализ и редакция элементов. Процедура удаления элемента. Демонстрация работы программы, исходные данные и результаты.

    лабораторная работа [788,6 K], добавлен 11.01.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.