Использование информационных технологий при работе в Microsoft Office

Автор: Пользователь скрыл имя, 27 Августа 2014 в 11:34, лабораторная работа

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

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

Оглавление

Оглавление 2
1. Организация программирования в Word с использованием встроенного языка VBA. 3
1.1. Описание конструкций языка VBA, обеспечивающих ветвление 3
1.2. Условие задачи на разветвление алгоритма 5
1.3. Распечатка программного кода 5
1.4. Распечатка результатов выполнения 6
2. Постановка задачи на обработку информации с использованием разветвления алгоритма 7
2.1. Описание условия задачи 7
2.2. Распечатка программного кода 7
2.3. Распечатка результатов выполнения 8
3. Программная обработка информации в таблице Excel 9
3.1. Описание организации информации в таблице Excel 9
3.2. Условие задачи на организацию обработки информации, представленной в виде таблицы Excel 9
3.3. Распечатка программного кода 9
3.4. Распечатка результатов выполнения 10
4. Постановка задачи на обработку информации в таблице Excel с использованием встроенного языка VBA 11
4.1 Описание условия задачи 11
4.2 Распечатка программного кода 11
4.3 Распечатка результатов выполнения 12
5. Литература и Internet-ресурсы 14

Файлы: 1 файл

ТитковМВ_Использование информационных технологий при работе в Microsoft Office.docx

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

МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ЭКОНОМИКИ,

СТАТИСТИКИ И ИНФОРМАТИКИ (МЭСИ)

 

 

 

 

 

Кафедра МОиАИС

 

 

 

 

 

 

 

 

 

Самостоятельная работа

по дисциплине «Информационные технологии в менеджменте»

на тему: «Использование информационных технологий при работе в Microsoft Office»

 

 

 

 

Выполнил студент

Группы ЗОМ-101

Титков Максим Владимирович 

 

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

Профессор

Смирнов Александр Алексеевич

 

 

 

 

 

 

 

Москва, 2013

 

Оглавление

 

 

 

 

1. Организация программирования в Word с использованием встроенного языка VBA.

1.1. Описание конструкций  языка VBA, обеспечивающих ветвление

Конструкции, обеспечивающие ветвление:

Условный оператор IF

Для реализации разветвляющегося вычислительного процесса в VBA используется оператор If…Then…Else, который представляет собой простейшую форму проверки условий. Он имеет следующий синтаксис:

If  УСЛОВИЕ   Then  ОПЕРАТОР_1  Else  ОПЕРАТОР_2

ОПЕРАТОР_1  выполняется, если УСЛОВИЕ истинно, в противном случае выполняется ОПЕРАТОР_2. При этом оператор If…Then…Else записывается в одну строку.

УСЛОВИЕ – это выражение логического типа. Результат выражения всегда имеет булевский тип. Выражение может быть простым и сложным. При записи простых условий могут использоваться все возможные операции отношения, указанные в табл. 1.1.

Таблица 1.1. Логические отношения

Операция

Название

Выражение

Результат

=

Равно

A = В

True, если А равно В

<> 

Не равно

A<>В

True, если А не равно В

Больше

А>B

True, если А ,больше В

Меньше

A<B

True, если А меньше В

>=

Больше или равно

A>=B

True, если А больше или равно В

<=

Меньше или равно

A<=B

True, если А меньше или равно В


 

Сложные условия образуются из простых путем применения логических операций и круглых скобок. Список логических операций приведен в табл. 1.2.

Таблица 1.2. Логические операции

 

 

Название

Выражение

А

В

Результат

Not

Логическое  
отрицание

Not A

False

True

 

True

False

And

Логическое И

A And B

True

True

False

False

True

False

True

False

True

False

False

False

Or

Логическое ИЛИ

A Or B

True

True

False

False

True

False

True

False

True

True

True

False


 

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

If УСЛОВИЕ  Then

 

         БЛОК_ОПЕРАТОРОВ_1

Else

 

         БЛОК_ОПЕРАТОРОВ_2

End If 

В условном операторе может проверяться несколько условий. В этом случае условный оператор имеет вид:

If УСЛОВИЕ_1  Then

 

         БЛОК_ОПЕРАТОРОВ_1

ElseIf УСЛОВИЕ_2  Then

 

           БЛОК_ОПЕРАТОРОВ_2

 

         Else           

 

              ….

End If 

Оператор выбора  Select Case 

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

Select Case  ПРОВЕРЯЕМОЕ_ВЫРАЖЕНИЕ

 

           Case  ЗНАЧЕНИЯ_1

 

                     ОПЕРАТОРЫ_1

 

           Case  ЗНАЧЕНИЯ_2 

 

                    ОПЕРАТОРЫ_2

 

           .  .  .

 

           Case  ЗНАЧЕНИЯ_N

 

                    ОПЕРАТОРЫ_N

 

           [Case Else 

 

                    ИНАЧЕ_ОПЕРАТОРЫ]

End Select

ПРОВЕРЯЕМОЕ_ВЫРАЖЕНИЕ может иметь любой скалярный тип, кроме вещественного. ЗНАЧЕНИЯ состоят из произвольного количества значений или диапазонов, отделенных друг от друга запятыми.

Тип ЗНАЧЕНИЙ должен совпадать с типом ПРОВЕРЯЕМОГО_ВЫРАЖЕНИЯ.

Сначала вычисляется ПРОВЕРЯЕМОЕ_ВЫРАЖЕНИЕ. Если его значение совпадает с одним из значений ЗНАЧЕНИЯ_I, то выполнятся ОПЕРАТОРЫ_I и управление передается оператору, стоящему после End Select. Если его значение не совпадает ни с одним из значений ЗНАЧЕНИЯ_I, то выполнятся ИНАЧЕ_ОПЕРАТОРЫ и управление передается оператору, стоящему после End Select

1.2. Условие задачи на разветвление алгоритма

 

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

Во-первых, ввод дня и месяца рождения.

Во-вторых, анализ введенной информации и выдачу на экран названия знака зодиака, соответствующего дате рождения.

Примечание. С 22.12 по 20.01 козерог; с 21.01 по 19.02 водолей;

с 20.02 по 20.03 рыбы; с 21.03 по 20.04 овен; с 21.04 по 21.05 телец;

с 22.05 по 21.06 близнецы; с 22.06 по 22.07 рак; с 23.07 по 23.08 лев;

с 24.08 по 23.09 дева; с 24.09 по 23.10 весы;

с 24.10 по 22.11 скорпион; с 23.11 по 21.12 стрелец.

 

1.3. Распечатка программного кода

 

Option Explicit

 

Sub Zodiac()

   'определение знака  зодиака по дате рождения

   Dim bornDate As Date, s As String

   bornDate = InputBox("Укажите дату рождения (день и месяц) в формате XX.XX.XXXX")

   MsgBox Zod(bornDate) 'вызов ф-ции Zod от введенной даты и вывод ее результата

End Sub

 

Function Zod(x As Date)

   Dim b1 As Byte, b2 As Byte

   b1 = Month(x): b2 = Day(x) 'введенная дата разбивается на 2 переменые: месяц (b1) и день (b2)

   Select Case b1             'в случае, если месяц равен...

      Case 1: If b2 <= 20 Then Zod = "Козерог" Else Zod = "Водолей" '1 и день меньше или равен 20, то присвоить ф-ции значение "козерог", иначе - "водолей"

      Case 2: If b2 <= 19 Then Zod = "Водолей" Else Zod = "Рыбы"    '2 и день меньше...

      Case 3: If b2 <= 20 Then Zod = "Рыбы" Else Zod = "Овен"

      Case 4: If b2 <= 20 Then Zod = "Овен" Else Zod = "Телец"

      Case 5: If b2 <= 20 Then Zod = "Телец" Else Zod = "Близнецы"

      Case 6: If b2 <= 21 Then Zod = "Близнецы" Else Zod = "Рак"

      Case 7: If b2 <= 22 Then Zod = "Рак" Else Zod = "Лев"

      Case 8: If b2 <= 23 Then Zod = "Лев" Else Zod = "Дева"

      Case 9: If b2 <= 23 Then Zod = "Дева" Else Zod = "Весы"

      Case 10: If b2 <= 23 Then Zod = "Весы" Else Zod = "Скорпион"

      Case 11: If b2 <= 22 Then Zod = "Скорпион" Else Zod = "Стрелец"

      Case 12: If b2 <= 21 Then Zod = "Стрелец" Else Zod = "Козерог"

   End Select

End Function

 

1.4. Распечатка результатов выполнения

 

 

 

 

2. Постановка задачи на обработку информации с использованием разветвления алгоритма

2.1. Описание условия задачи

 

Найти корни квадратного уравнения.

2.2. Распечатка программного кода

 

Option Explicit

 

Sub SquareEquation()

   'определение корней  квадратного ур-я

   Dim a As Double, b As Double, c As Double, s As String

   s = InputBox("Укажите коэффициент при x^2", "Ввод чисел")

   If (s = "") Then

        a = 0

       Else

        a = s

   End If

   s = InputBox("Укажите коэффициент при x", "Ввод чисел")

   If (s = "") Then

        b = 0

       Else

        b = s

   End If

   s = InputBox("Укажите свободный коэффициент", "Ввод чисел")

   If (s = "") Then

        c = 0

       Else

        c = s

   End If

   MsgBox SqEq(a, b, c) 'вызов ф-ции и вывод ее результата

End Sub

 

Function SqEq(a As Double, b As Double, c As Double)

   Dim d As Double, x1 As Double, x2 As Double

   If (a <> 0) Then

      d = b ^ 2 - 4 * a * c

      If d >= 0 Then

         x1 = (-b + d ^ (1 / 2)) / (2 * a)

         x2 = (-b - d ^ (1 / 2)) / (2 * a)

         SqEq = "x1=" + Str(x1) + "; x2=" + Str(x2) + "."

       Else

         x1 = (-b) / (2 * a)

         x2 = Abs(d) ^ (1 / 2) / (2 * a)

         SqEq = "x1=" + Str(x1) + "+" + Str(x2) + "i" + "; x2=" + Str(x1) + "-" + Str(x2) + "i" + "."

      End If

     Else

       SqEq = "Введенное ур-е не является квадратным"

    End If

End Function

2.3. Распечатка результатов выполнения

 

 

 

 

 

 

 

 

 

 

 

3. Программная обработка информации в таблице Excel

3.1. Описание организации информации в  таблице Excel

Создание в прикладном программном продукте Excel макроса, обеспечивающего обработку информации, расположенной в таблице Excel. В таблице Excel, в первой строке, заданы положительные целые числа. Информация занесена, начиная с первого столбца. Количество заполненных столбцов не задается. Программный код, должен обеспечить определение местоположения (номера столбца) максимального элемента.

3.2.  Условие задачи на организацию обработки информации, представленной в виде таблицы Excel

Создание в прикладном программном продукте Excel макроса, обеспечивающего обработку информации, расположенной в таблице Excel. В таблице Excel, в первой строке, заданы положительные целые числа. Информация занесена, начиная с первого столбца. Количество заполненных столбцов не задается. Программный код, должен обеспечить определение местоположения (номера столбца) максимального элемента.

3.3.  Распечатка программного кода

Sub FindMaxValue()

Dim oRg As Range, iMax As Variant

'Выбираем первую строку  в качестве диапазона поиска

Set oRg = Rows("1")

    'Находим максимальное  значение

    iMax = Application.Max(oRg)

    'Выбираем в  диапазоне ячейку, содержащую максимальное  значение

    oRg.Find(What:=iMax, _

        After:=oRg.Range("A1"), _

        LookIn:=xlValues, _

        LookAt:=xlPart, _

        SearchOrder:=xlByRows, _

        SearchDirection:=xlNext, MatchCase:=False _

        ).Select

    'Изменяем формат выбранной ячейки (цвет)

    With Selection.Interior

        .Pattern = xlSolid

        .PatternColorIndex = xlAutomatic

        .ThemeColor = xlThemeColorAccent3

        .TintAndShade = 0

        .PatternTintAndShade = 0

    End With

    'Выводим сообщение с данными по найденной ячейке

    With Selection

        MsgBox "Max value : " & iMax & vbCrLf & _

        "Cell position " & vbCrLf & _

        "Row : " & .Row & vbCrLf & _

        "Column : " & .Column

    End With

    End Sub

3.4. Распечатка результатов выполнения

 

 

4. Постановка  задачи на обработку информации  в таблице Excel с использованием  встроенного языка VBA

4.1 Описание  условия задачи

Пусть есть станок возраста t лет. Пусть оборудование можно менять раз в год (в самом конце года). Пусть r(t) – стоимость продукции, l(t) – затраты на оборудование (сервис), s(t) – остаточная стоимость оборудования, p – стоимость нового оборудования.

Необходимо спланировать оптимальный график замены оборудования на N+1 лет (т.е. так, чтобы за N+1 лет получить максимальную прибыль).

 

4.2 Распечатка  программного кода

 

Option Explicit

Sub ChangingEquipmentIssue()

Dim oRg As Range, p As Double, s As Double, n As Double, str As String, i As Integer, j As Integer

    ‘Обеспечиваем ввод параметров с клавиатуры

    str = InputBox("Введите число лет", "Ввод чисел")

    If (str = "") Then

        n = 0

       Else

        n = str

    End If

    str = InputBox("Укажите остаточную стоимость", "Ввод чисел")

    If (str = "") Then

        s = 0

       Else

        s = str

    End If

    str = InputBox("Укажите стоимость нового оборудования", "Ввод чисел")

    If (str = "") Then

        p = 0

       Else

        p = str

    End If

   ‘Создаем двойной цикл, заполняющий ячейки

    For i = 1 To n

        For j = 1 To n + 1

            ‘При заполнении первой строки используем функцию ChEqIsFirst

            If (i = 1) Then

                Cells(1, j) = ChEqIsFirst(p, s, j - 1)

               ‘При заполнении последующих строк - ChEqIsNext

               Else

                Cells(i, j) = ChEqIsNext(p, s, j - 1, i)

            End If

        Next j

    Next i

End Sub

 

Function ChEqIsFirst(p As Double, s As Double, t As Integer)

    Dim fi As Double

    If (10 - t > 0) Then fi = 10 - t Else fi = 0

    'ChEqIsFirst = max(fi, fi + s - p)

    If (fi > fi + s - p) Then ChEqIsFirst = fi Else ChEqIsFirst = fi + s - p

End Function

 

Function ChEqIsNext(p As Double, s As Double, t As Integer, i As Integer)

    Dim fi As Double

    If (10 - t > 0) Then fi = 10 - t Else fi = 0

    'Если лучше без замены - вывести число, иначе - вывести число, выделить и закрасить ячейку

    If (fi + Cells(i - 1, t + 2) > 10 - p + s + Cells(i - 1, 2)) Then

        ChEqIsNext = fi + Cells(i - 1, t + 2)

       Else

        ChEqIsNext = 10 - p + s + Cells(i - 1, 2)

        Cells(i, t + 1).Select

        With Selection.Interior

            .Pattern = xlSolid

            .PatternColorIndex = xlAutomatic

            .ThemeColor = xlThemeColorAccent3

            .TintAndShade = 0

            .PatternTintAndShade = 0

        End With

    End If

End Function

 

4.3 Распечатка  результатов выполнения

 

Пусть в нашей задаче fi = r(t) - l(t) = max(10-t, 0); s(t), p  – константы, задаваемые пользователем вместе с числом лет N.

 

 

Программой был сгенерирован график. В интересующей нас последней строке замена оборудования происходит после 4 лет эксплуатации (незакрашенные ячейки – эксплуатация без замены). Следовательно, для оптимальной работы потребуется 4 замены за 13 лет, т.к. рекомендуется замена с периодичностью 4 года.

 

 

Использованные для вычисления таблицы формулы:

Первая строка:            

Последующие:            

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

Информация о работе Использование информационных технологий при работе в Microsoft Office