Язык программирования VBA

Автор: Пользователь скрыл имя, 27 Марта 2015 в 20:48, курсовая работа

Краткое описание

Цель курсовой работы.
Рассмотреть объект Range и его свойства. Выполнить сравнительный анализ методов решения уравнений.
Задачи курсовой работы.
Подобрать теоретический материал по свойствам объекта Range и методам решения уравнений (половинного деления и касательных). Выполнить расчеты в MS Excel используя встроенный язык программирования VBA и сделать анализ полученных результатов.

Оглавление

Задание на курсовую работу 3
Введение 4
Глава 1. Теоретическая часть 5
1.1 Свойства объекта Range 5
1.2 Метод половинного деления 11
1.2.1 Описание метода половинного деления 11
1.2.2 Алгоритм метода половинного деления: 11
1.3 Метод касательных 12
1.3.1 Описание метода касательных 12
1.3.2 Алгоритм метода касательных 14
Глава 2. Практическая часть 15
2.1 Решение уравнений 15
2.2 Анализ полученных решений уравнений 15
Заключение 17
Список литературы 18
Приложение 19
Приложение 20
Приложение 21
Приложение 22

Файлы: 1 файл

Курсовая_Информатика_10.doc

— 177.00 Кб (Скачать)

ФИО студента Курсовая работа по Информатике

Министерство образования и науки Российской Федерации

Федеральное государственное автономное образовательное учреждение высшего профессионального образования

«Уральский федеральный университет

имени первого Президента России Б.Н. Ельцина»

 

 

 

 

 

 

 

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

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

Язык программирования VBA

Вариант 10

 

 

 

 

 

 

 

 

 

 

Студент:

Группа:

Преподаватель:

 

 

 

 

 

 

 

 

 

 

Екатеринбург

2012 г.

 

Содержание

 

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

Теоретическая часть

Задание 1:

1.10 VBA. Объект Range. Свойства.

Задание 2:

Описать метод половинного деления и метод касательных. Провести сравнительный анализ.

Практическая часть

Заданы два уравнения. Необходимо каждое из них решить методом половинного деления и методом касательных согласно своему варианту. Проанализировать и сделать выводы.

Вариант

Уравнение 1

Уравнение 2

10


 

 

ВВЕДЕНИЕ

Microsoft Excel имеет встроенный язык  программирования - Visual Basic for Аpplications (VBA). Этот язык позволяет создавать  приложения, выполняемые в среде Microsoft Office. Это могут быть разнообразные аналитические программы, финансовые системы, программы учета кадров, системы автоматического создания официальных писем/документов с помощью библиотеки готовых шаблонов и т.п. При этом интерфейс создаваемой программы может быть совершенно непохожим на интерфейс того приложения, в котором она написана.

VBA сочетает в себе практически  неограниченные возможности с  простотой изучения и использования. Теперь большинство функций можно  описать, не прибегая к программированию. В том случае, если возможностей языка недостаточно, можно обратиться к API-функциям Windows. Пожалуй, самое главное достоинство VBA в том, что этот язык является единым для всех офисных приложений Microsoft и поэтому позволяет связывать их между собой. Уже сейчас из программы, написанной в Excel, можно обращаться к объектам Word для Windows, а также Microsoft Project. Это открывает заманчивые перспективы.

Цель курсовой работы.

Рассмотреть объект Range и его свойства. Выполнить сравнительный анализ методов решения уравнений.

Задачи курсовой работы.

Подобрать теоретический материал по свойствам объекта Range и методам решения уравнений (половинного деления и касательных). Выполнить расчеты в MS Excel используя встроенный язык программирования VBA и сделать анализ полученных результатов.

Курсовая работа состоит из двух глав. Первая глава содержит теоретический материал. Во второй главе приводится решение примеров методом половинного деления и методом касательных и выполнен анализ полученных результатов.

 

Глава 1. Теоретическая часть

1.1 Свойства объекта Range

Объект Range используется в программном коде VBA наиболее часто и он позволяет работать как с отдельными ячейками, так и диапазонами - строками, столбцами и двухмерными областями [1].

В иерархии Excel объект Range (диапазон) идет сразу после объекта worksheet. Объект Range является одним из ключевых объектов VBA.

Особенностью объекта Range является то, что он не является элементом никакого семейства объектов.

Доступ и работу с ячейками объект осуществляет с помощью своих свойств и методов.

Объект Range позволяет сочетать гибкость VBA и мощь рабочего листа Excel. Более 400 встроенных функций рабочего листа существенно упрощают и делают более наглядным программирование на VBA.

Наиболее часто используемые свойства и методы объекта Range.

Перечислим основные свойства объекта Range.

Value Возвращает значение из ячейки или в ячейки диапазона.

В данном примере переменной х присваивается значение из ячейки C1 :

х = Range ("C1") .Value

В следующем примере в диапазон AI : В2 введена 1 :

Range ("A1:B2") .Value = 1

Name Возвращает имя диапазона.

В данном примере диапазону А1:В2 присваивается имя итоги:

Range ( "Al :B2") .Name = "Итоги"

Count Возвращает число объектов в наборе.

В данном примере переменной х присваивается значение, равное числу строк диапазона AI : В2 :

х = Range ( "Al :B2") .Rows . Count

CurrentRegion Возвращает число строк текущего диапазона. Текущим является диапазон, ограниченный пустыми строками и столбцами и содержащий данный элемент.

В следующем примере переменной у присваивается значение, равное числу строк в текущем диапазоне, содержащем ячейку AI :

у = Range ( "Al" ). CurrentRegion. Rows . Count

WrapText Позволяет переносить текст при вводе в диапазон. Допустимые значения True и False.

В следующем примере в ячейку В2 вводится текст длинный текст и в этой ; ячейке устанавливается режим ввода текста с переносом:

With Range ("B2") .Value = "Длинный текст" .WrapText = True End With

EntireColumn, EntireRow Возвращает столбец и строку соответственно.

В данном примере очищается содержимое строки и выделяется столбец с активной ячейкой:

ActiveCell . EntireRow. Clear ActiveCell .EntireColumn. Select

ColumnWidth, RowHeight Возвращает ширину столбцов и высоту строк диапазона соответственно

Comment Возвращает объект comment (примечание), который связан с левым верхним углом диапазона при отображении на экране. Объект comment является элементом семейства comments. Метод AddComment, примененный к диапазону, создает новое примечание. Среди методов объекта comment отметим только метод Text, который задает текст, выводимый в примечании. Синтаксис:

Text (Text, Start, Overwrite)

  • Text — строка, выводимая в качестве примечания П start — с какого символа вводится текст в уже существующее примечание. Если аргумент опущен, то из примечания удаляется весь ранее введенный текст П overwrite — допустимые значения: True (вводимый текст записывается поверх уже существующего) и False (вводимый текст вставляется в уже существующий) Среди свойств объекта Comment отметим только свойство visible, устанавливающее отображение примечания при активизации диапазона, имеющего определенное примечание. В качестве примера рассмотрим следующие инструкции, которые создают и отображают примечание ячейки В3, поясняющее запланированное событие:

With Range ("ВЗ")

.AddComment

.Text Text:= "Внимание!"

.Visible = True End With

Font Возвращает объект Font (шрифт). Объект Font имеет следующие свойства:

  • Name — строка, указывающая имя шрифта, например "Arial Cyr"
  • FontStyle — СТИЛЬ, возможен Regular (обычный), Bold (ПОЛУЖИРНЫЙ), Italic(курсив), Bold italic (полужирный курсив)
  • size - размер
  • strikethrough — допустимы два значения: True (буквы имеют линию по центру, как будто они перечеркнуты) и False (не имеют линии по центру)
  • Superscript — допустимы два значения: True (текст используется как верхний индекс) и False (не используется как верхний индекс)
  • Subscript — допустимы два значения: True (текст используется как нижний индекс) и False (не используется как нижний индекс)
  • Underline-допустимыми являются значения:
    • xlNone (нет подчеркивания)
    • xlSingie (одинарное, по значению) 
    • xlDoubie (двойное, по значению)
    • xlsingleAccounting (одинарное, по ячейке)
    • Accounting (двойное, но ячейке)

Например, в следующем примере устанавливается для диапазона AI : в2 полужирный шрифт, красного цвета и с высотой символов 1 4 :

With Range ("A1:B2").Font

.Size = 14

.FontStyle = Bold

.Colorlndex = 3

End With 

Formula Возвращает формулу в формате Al.

Например, следующая инструкция вводит в ячейку с2 формулу =$А$4+$А$10:

Range ("C2") . Formula = "=$А$4+$А$10"

FormulaArray 1 Возвращает формулу диапазона в формате А1. В отличие от обыкновенной формулы рабочего листа, формула диапазона вводится на рабочем листе не посредством нажатия на клавишу <Enter>, а с помощью комбинации клавиш <Ctrl>+<Shift>+<Enter>. Следующая инструкция вводит в диапазон Е1:ЕЗ формулу {=Sum(Al:A3*Bl:B3) }:

Range ( "El :E3") .FormulaArray = "=Sum(Al:A3*Bl:B3) "

FormulaHidden Допустимые значения: True (формула спрятана, если рабочий лист или книга защищены) и False (в противном случае).

Например, следующая инструкция скрывает формулы в столбце А: Columns ("A") . FormulaHidden = True

FormulaLocal Возвращает неанглоязычные (местные) формулы в формате А1.

Например, следующая инструкция вводит в ячейку В2 формулу =СУММ(С1:С4):

Range("B2"). FormulaLocal = "=СУММ (С1:С4) "

JormulaRlCl Возвращает формулу в формате R1C1.

Например,

Range ("Bl") . FormulaRlCl = "=SQRT (R3C2 ) "

FormulaRlClLocal Возвращает неанглоязычные формулы в формате R1C1

Text Возвращает содержание диапазона в текстовом формате 

HorizontalAlignment Горизонтальное выравнивание. Допустимые значения:

  • xlceneral (обычное выравнивание, зависящее от типа вводимых значений)
  • xlcenter (выравнивание по центру)
  • xlRight (выравнивание по правому краю)
  • xlLeft (выравнивание по левому краю)
  • xUustify (выравнивание по ширине)
  • xlCenterAcrossSelection (выравнивание по центру в выделенном диапазоне)
  • xlFill (выравнивание по ширине 

Vertical Alignment Вертикальное выравнивание. Допустимые значения:

  • xlBottom (выравнивание по нижнему краю),
  • xlcenter (выравнивание по центру),
  • xUustify (выравнивание по высоте),
  • xlTop (выравнивание по верхнему краю) 

Orientation Ориентация. Допускается либо угол поворота текста в градусах от —90° до 90°, либо одно из допустимых значений:

  • xlDownward (выравнивание по левому краю сверху вниз, соответствует углу —90°)
  • xlHorizontal(выравнивание по горизонтали, соответствует нулевому углу )
  • xlupward (выравнивание по правому краю снизу вверх, соответствует углу 90°)
  • xlvertical (выравнивание по вертикали, нет соответствия в градусах)

ShrinkToFit Допустимые значения: True (автоматическое изменение шрифта так, чтобы текст помещался в ячейку) и False (в противном случае)

1.2 Метод половинного деления

1.2.1 Описание метода половинного деления

Метод половинного деления один из методов решения нелинейных уравнений и основан на последовательном сужении интервала (рис.1), содержащего единственный корень уравнения F(x)=0 до того времени, пока не будет достигнута заданная точность е. Метод используется при решении квадратных уравнений и уравнений высших степеней  [3,7].

1.2.2 Алгоритм метода половинного деления

Пусть задан отрезок [а,b], содержащий один корень уравнения. Этот отрезок может быть предварительно найден с помощью шагового метода.

  1. Определить новое приближение корня х в середине отрезка [а,b]: х=(а+b)/2.
  2. Найти значения функции в точках а и х: F(a) и F(x).
  3. Проверить условие F(a)*F(x) < 0. Если условие выполнено, то корень расположен на отрезке [а,х]. В этом случае необходимо точку b переместить в точку х (b=х). Если условие не выполнено, то корень расположен на отрезке [х,b]. В этом случае необходимо точку а переместить в точку х (а=х).
    1. Перейти к пункту 1 и вновь поделить отрезок пополам. Алгоритм продолжить до того времени, пока не будет выполнено условие |F(x)| < e .

Рисунок. 1. Иллюстрация метода половинного деления

Достоинство метода половинного деления: более быстрая сходимость к заданной точности, чем у шагового. Недостаток: если на отрезке [а,b] содержится более одного корня, то метод не работает.

1.3 Метод касательных

1.3.1 Описание метода касательных

Задан отрезок [а,b], содержащий корень уравнения F(x)=0. Уточнение значения корня производится путем использования уравнения касательной. В качестве начального приближения задается тот из концов отрезка [а,b], где значение функции и ее второй производной имеют одинаковые знаки (т.е. выполняется условиеF(x0)*F"(x0) > 0).

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