Математическая постановка задачи 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Математическая постановка задачи



 

Определение массы руды, перевезенной за весь период

SMASR = Q(I,J).

Определение суммарной производительности I-го самосвала

S(I) = Q(I,J).

Определение номера самосвала с максимальной суммарной производительностью за весь период

MAXPR =MAX{S(I)}.

Определение суммарной производительности автосамосвалов в J-ом месяце

SS(J) = .

Средняя производительность автосамосвалов в J-ом месяце

SRPR(J) =SS(J)/N.

 

3 ГРАФИЧЕСКАЯ СХЕМА АЛГОРИТМА

 

Графическая схема алгоритма (блок-схема) по заданию 55 изображена на рисунке В1 (Приложение В).

 

 

4 РЕШЕНИЕ ЗАДАЧИ С ПОМОЩЬЮ ПРОГРАММЫ MS EXCEL

4.1 Загрузить программу MS Excel.

Формируем заголовки таблиц (таблица 3, таблица 4), поместив в них соответствующий текст (см. рисунок 1).

4.2 Обрамляем ячейки таблиц, используя кнопку «Все границы» Панели инструментов «Форматирование».

Для таблицы 3 предусматриваем внизу несколько дополнительных строк (до 14 строки) для последующего добавления данных с помощью разработанной формы1 (рисунок 3).

4.3 Вводим данные для решения контрольного примера (ячейки В6:H8). Числа для контрольного примера взяты из таблицы 1.

4.4 Для вычисления суммарной производительности каждого самосвала используем функцию СУММ мастера функций, например для 1 самосвала =СУММ(C6:H6), поместив её в ячейку I6. Копируем формулу =СУММ(C6:H6) из ячейки I6 в ячейки I7 до I14. Для этого используем маркер заполнения.

 

Рисунок 1 – Решение задачи в Excel

 

4.5 Дополним расчетную таблицу внизу пустыми строками для последующего добавления данных в таблицу.

4.6 Определим количество работающих самосвалов в каждый из месяцев. Для определения количества работающих самосвалов в 1 месяц введем в ячейку С15 формулу =СЧЁТЗ(C6:C14). Функция СЧЕТЗ считает количество занятых ячеек в указанном интервале. Копируем формулу из ячейки С15 по строке до ячейки Н15.

4.7 Для вычисления средней производительности автопредприятия за месяц вводим в ячейку С21 формулу =СРЗНАЧ(С6:С14) (категория – Статистические) и копируем эту формулу по строке до ячейки Н21.

4.8 Для выбора номера самосвала с наибольшей производительностью в ячейку I 23 вводим формулу =ВЫБОР(ПОИСКПОЗ(МАКС(I6:I14);I6:I14;0);В6;В7;В8;В9;В10;В11;В12;В13;В14). Эта формула в ячейках I6:I14 находит максимальное число, определяет позицию этого числа (например 3), затем из ячеек В6:В14 выбирает ячейку, стоящую на этой позиции (получается В8) и выводит значение из ячейки В8.

Обращаемся к Мастеру функций f x, выбираем категорию «Ссылки и массивы» затемё функцию ВЫБОР, аргументом которой будет функция ПОИСКПОЗ, аргументом которой является функция МАКС. По функции МАКС(I6:I14) определяется максимальное значение числа среди чисел интервала ячеек I6:I14. В свою очередь, в функции ПОИСКПОЗ значение МАКС(I6:I14) является искомым числом, позиция которого определяется из интервала ячеек I6:I14. Число 0 в записи функции ПОИСКПОЗ означает, что будет найдено одно (первое) максимальное число. Функция ПОИСКПОЗ задает функции ВЫБОР позицию, которую нужно выбрать из следующих ячеек. Таким образом, номер самосвала с наибольшей производительностью) находиться в ячейке I 23.

4.9 Для вычисления общей массы руды, перевезенной всеми автосамосвалами за анализируемый период времени, вводим в ячейку I25 формулу =СУММ(I6:I14), либо формулу =СУММ(С6:I14).

4.9 На рисунке 2 представлена расчетная таблица с формулами. Для вывода таблицы в таком виде необходимо выполнить команду СЕРВИС – Параметры – вкладка «Вид» – отметить флажок «Формулы».

 

Рисунок 2 – Расчетная таблица с формулами. Функция ВЫБОР(…) находится в ячейке I23

В ячейках D15:H15 формулы аналогичны формуле в ячейке С15, в ячейках D21:H21 – формуле в ячейке С21.

4.10 По результатам расчетов строим совмещенный с диаграммой (количество работающих автосамосвалов) график (средняя месячная производительность автосамосвалов). Для этого выделяем ячейки В15:Н15, затем нажимаем клавишу Ctrl и выделяем ячейки В21:Н21 (ячейки В15 и В21 выделяем для того, чтобы сразу получить обозначения – легенду), вызываем Мастер Диаграмм, нажав на его значок, расположенной на панели инструментов Стандартные. Выбираем вид диаграммы на вкладке «Нестандартные» – «график | гистограмма2». Получаем график с двумя осями У, одна ось для указания «количества работающих самосвалов», другая – для указания «средней производительности самосвалов в месяц. Выполняем остальные шаги построения диаграммы. На 2 шаге построения диаграммы проверяем, что данные берутся из строк. На 3 шаге назначаем параметры диаграммы: название диаграммы, название осей, проводим линии сетки, изменяем размещение легенды. На 4 шаге указываем «Размещение» на отдельном листе. Полученная диаграмма представлена на рисунке 3.

 

5 РАЗРАБОТКА МАКРОСА ДЛЯ ПОСТРОЕНИЯ ДИАГРАММЫ

5.1 Удалите диаграмму, построенную по п.4.10. И запишите все действия построения диаграммы в макрос. Для этого выполните следующие действия:

- Выполните команду Сервис – Макрос – Начать запись – введите имя макроса, например, «График».

- Выполните все действия п. 4.10 – построения диаграммы и назначения ей параметров.

- Выполните команду Сервис – Макрос – Остановить Запись.

Данный макрос используется при проектировании интерфейса. Необходимо будет привязать его к кнопке см. п. 6.14.

 

6 РАЗРАБОТКА ИНТЕРФЕЙСА

6.1 Интерфейс программы предусматривается для удобства ввода исходных данных и вывода результатов расчета. Реальная расчетная таблица может быть очень большой, данные и результаты могут быть не видны на одном экране, разбросаны по таблице. Для редактирования данных, их ввода, удаления и просмотра результатов расчета будет требоваться перемещение по большой таблице, что не очень удобно. Разработка интерфейса программы включает проектирование форм для ввода исходных данных и вывода результатов. Написания кода для процедур отклика элементов управления: кнопок, кнопок выбора, счетчиков и т.д. Написания кода модулей, если программа объемная. Проверка работы интерфейса на контрольном примере.

 

 

Рисунок 3 – График показателей работы автопредприятия

 

6.2 Запуск интерфейса программы, осуществляется кнопкой «ДОБАВЛЕНИЕ И УДАЛЕНИЕ автосамосвалов», расположенной на рабочем листе (рисунок 1). Для установки кнопки подключите панель инструментов «Элементы управления» командой ВИД - Панели инструментов – Элементы управления. На этой ПИ нажмите на кнопку «Конструктор» (она должна быть утоплена) – тем самым включится режим конструктора. Выбираем на ПИ кнопку «Кнопка», переходим в область рабочего листа и, нажав левую клавишу мыши, рисуем кнопку. Нажав кнопку «Свойства» на ПИ, устанавливаем свойство Caption = «ДОБАВЛЕНИЕ И УДАЛЕНИЕ автосамосвалов». Привязываем к кнопке процедуру запуска формы1. Для этого 2 раза щелкаем по ней левой кнопкой мыши и между строк начала и конца процедуры, которые генерируются автоматически вставляем команду показать (Show) форму UserForm1.

Private Sub CommandButton1_Click()

UserForm1.Show

End Sub

Данная программа создается в модуле рабочего листа 1 (того, где расположена кнопка).

6.3 Нажатие на кнопку «ДОБАВЛЕНИЕ И УДАЛЕНИЕ автосамосвалов» открывает форму1. Проект формы1 представлен на рисунке 4 c обозначением элементов управления.

 

 

Рисунок 4 – Проект формы1.

 

Форма1 предназначена для добавления и удаления исходных данных. Исходные данные отмечены в таблице 2, как «Входные».

6.4. Для создания формы1 перейдите в редактор VBA командой Сервис – Макрос – Редактор Visual Basic. В редакторе выполните команду Insert –UserForm. В окне свойств UserForm1 измените свойство Caption = Работа с исходными данными – этот текст появится в строке надписи формы1.

6.5. На вид формы1 оказывает влияние структура таблицы в Excel. На ней размещены поля (TextBox) для ввода № самосвала и его объемы перевозок за месяцы январь, февраль, март, апрель, май, июнь. Т.е. предполагается ввод в таблицу по строкам (как в базах данных) – это интервалы ячеек:В6:Н6, В7:Н7 и т.д. Дополнительно в таблицу и в форму1 добавлено поле «№ записи». В поле «Суммарная производительность» осуществляется вывод этого результата из ячеек диапазона I6:I14. Кроме того на форме1 размещены надписи (lebel).

6.6 На форме расположены элементы управления. Названия кнопок формы введены аналогично п. 5.2 путем изменения её свойства Caption. Элементы управления выполняют следующие функции:

- Счетчик (SpinButton1) – осуществляет переход по записям таблицы и позволяет отражать в полях формы (TextBox) значения из ячеек таблицы и записывать значения полей формы (когда добавляется новая запись) в ячейки таблицы Cells(i,j).

- Кнопка «Добавить запись» - из полей формы1 записывает новую строку в ячейки таблицы Excel, например, A9:I9, для этого пользователь должен ввести в поля формы значения для новой строки таблицы.

- Кнопка «Удалить запись» - удаляет выбранную запись, перепи­сыванием нижележащей записи на выбранную.

- Кнопка «Посмотреть ИТОГИ» - загружает форму2.

- Кнопка «Закрыть Форму» - закрывает форму1.

6.7 Код программы передвижения счетчика вверх. Для написания кода нужно два раза щелкнуть по счетчику на форме. В модуле формы в списке событий выбрать для SpinButton1 события SpinUp (счетчик возрастает) и SpinDown (счетчик уменьшается). Между строками начала и конца процедуры наберите код, (см.рисунок 5).

Private Sub SpinButton1_SpinUp() – Начало процедуры

Набрать код процедуры

End Sub - Конец процедуры.

Private Sub SpinButton1_SpinDown() – Начало процедуры

Набрать код процедуры

End Sub - Конец процедуры.

В коде приведенных процедур (см.рисунок 5): n – номер записи, TextBox8 – поле счетчика (см. рисунок 4), отражающее номер записи в таблице Excel. Val(TextBox8.Text) – перевод текстового значения поля в число функцией Val и присваивание этого значения переменной n – номеру записи. Номер записи увеличивается или уменьшается на 1 и передается в TextBox8. При этом переменная n переводится в сивол (текст) str(n). В процедурах используется обращение к процедуре ReadRec(n) – читать n-ую запись из ячеек таблицы и писать в поля формы.

6.8. Код процедуры ReadRec необходимо создать. Для этого выполнить команду Insert – Module и в открывшемся модуле набрать следующий код.

Public n As Integer ‘ Глобально объявленная переменная n она «видна» из любой процедуры

Public Sub ReadRec(rec) ‘ Процедура читать запись

If rec > 0 Then ‘ Если номер записи больше 0 выполнить действия

With UserForm1 ‘ Объявление структурной скобки для объекта форма1

 

 

Рисунок 5 – Программирование счетчика (SpinButton)

 

В нижележащих строках данные из ячеек столбцов с 2 по 9 и из строк, соответствующих значению rec+5, рабочего листа Решение таблицы Excel присваиваются полям формы1. rec – номер переданной записи, к ней прибавляется число 5, потому, что данные в таблице расположены с 6 строки. Если rec=1, то rec+5=6.

.TextBox1.Value = Cells(rec + 5, 2).Value

.TextBox2.Value = Cells(rec + 5, 3).Value

.TextBox3.Value = Cells(rec + 5, 4).Value

.TextBox4.Value = Cells(rec + 5, 5).Value

.TextBox5.Value = Cells(rec + 5, 6).Value

.TextBox6.Value = Cells(rec + 5, 7).Value

.TextBox7.Value = Cells(rec + 5, 8).Value

.TextBox9.Value = Cells(rec + 5, 9).Value

End With ‘ Закрытие структурной скобки

End If ‘ Конец оператора if

End Sub ‘ Конец процедуры

 

6.9 Программирование отклика кнопки «Добавить запись». Откройте форму1, затем 2 раза щелкните по кнопке «Добавить запись» и напишите процедуру

Private Sub CommandButton1_Click()

TextBox1.SetFocus’ Установить курсор в поле TextBox1

WriteRec (n) ’ Процедура «Писать n-ую запись» из полей формы1 в ячейки таблицы

n = n + 1’ Изменить номер записи на 1

TextBox8.Text = Str(n) ‘ Передать номер записи в поле счетчика

ReadRec (n) ‘ Процедура «Читать n-ую запись» из ячеек таблицы и писать в поля формы1

End Sub

6.10. В отклике кнопки «Добавить запись» содержится обращение к процедуре WriteRec -писать запись из полей формы1 в ячейки таблицы. Для написания кода этой процедуры перейдите в модуль, где содержится код процедуры ReadRec и далее наберите код процедуры WriteRec.

Public Sub WriteRec(rec)’ rec – номер записи, передаваемой в процедуру

If rec > 0 Then ‘ номер записи должен быть положительным

With UserForm1 ‘ Объявление структурной скобки для объекта форма1

В нижележащих строках данные из полей формы1 присваиваются ячейкам столбцов с 1 по 8 и строк, соответствующих значению rec+5, рабочего листа Решение таблицы. rec – номер переданной записи, к ней прибавляется число 5, потому, что данные в таблице расположены с 6 строки. Если rec=1, то rec+5=6. В ячейках 9 столбца производится вычисление суммарной производительности самосвалов.

Cells(rec + 5, 1).Value =.TextBox8.Value ‘

Cells(rec + 5, 2).Value =.TextBox1.Value

Cells(rec + 5, 3).Value =.TextBox2.Value

Cells(rec + 5, 4).Value =.TextBox3.Value

Cells(rec + 5, 5).Value =.TextBox4.Value

Cells(rec + 5, 6).Value =.TextBox5.Value

Cells(rec + 5, 7).Value =.TextBox6.Value

Cells(rec + 5, 8).Value =.TextBox7.Value

‘ Формула в следующей строке записана в адресации R1C1

Cells(rec + 5, 9).FormulaR1C1 = "=SUM(RC[-6]:RC[-1])" ‘

End With ‘‘ Закрытие структурной скобки

End If ‘ Конец оператора if

End Sub ‘ Конец процедуры

Формулу в адресации R1C1 можно получить, переключив вид адресации командой СЕРВИС – Параметры – вкладка Общие – Стиль ссылок R1C1.

Поставьте курсор в ячейку с формулой, в строке формул отобразится её написание в формате R1C1. Формулу можно скопировать из строки формул и вставить в код программы.

 

6.11 Программирование отклика кнопки «Удалить запись». Откройте форму1, затем 2 раза щелкните по кнопке «Удалить запись» и напишите процедуру

Private Sub CommandButton2_Click()

DelRec (n)’ Процедура удаление записи

ReadRec (n)’

End Sub

 

6.12. Написание кода процедуры DelRec. Перейдите в модуль, где содержатся коды процедур ReadRec и WriteRec и далее наберите код процедуры DelRec.

Public Sub DelRec(rec)

‘Процедура выполняет действия перезаписи ячеек 2 – 9 столбцов таблицы i+1 строки на i строку.

i = rec+5

While Worksheets(1).Cells(i, 1).Value <> "" ‘ Цикл выполняется до тех пор пока в ячейках 1 столбца не будет пусто.

Cells(i, 2).Value = Cells(i + 1, 2).Value

Cells(i, 3).Value = Cells(i + 1, 3).Value

Cells(i, 4).Value = Cells(i + 1, 4).Value

Cells(i, 5).Value = Cells(i + 1, 5).Value

Cells(i, 6).Value = Cells(i + 1, 6).Value

Cells(i, 7).Value = Cells(i + 1, 7).Value

Cells(i, 8).Value = Cells(i +1, 8).Value

Cells(i, 9).FormulaR1C1 = Cells(6, 9).FormulaR1C1

i = i + 1

Wend

End Sub

 

6.13 Программирование отклика кнопки «Посмотреть Итоги». Откройте форму1, 2 раза щелкните по кнопке «Посмотреть Итоги» и напишите процедуру

Private Sub CommandButton4_Click()

UserForm1.Hide ‘ Скрыть форму1

UserForm2.Show’ Показать форму2

End Sub

6.14 Программирование процедур откликов кнопок формы2. Проект формы2 (см. рисунок 6).

Для кнопки «ПОКАЗАТЬ» необходимо из 21 строки таблицы вывести в надписи значения ячеек в формате с двумя знаками после запятой.

Private Sub CommandButton1_Click()

FormatNumber –функция форматирования чисел из ячеек 21 строки и соответствующих столбцов с 3 по 8). После форматирования числа будут с двумя знаками после запятой.

Label1.Caption = FormatNumber(Cells(21, 3), 2)

Label2.Caption = FormatNumber(Cells(21, 4), 2)

Label3.Caption = FormatNumber(Cells(21, 5), 2)

 

 

 

Рисунок 6 – Проект формы2

 

Label4.Caption = FormatNumber(Cells(21, 6), 2)

Label5.Caption = FormatNumber(Cells(21, 7), 2)

Label6.Caption = FormatNumber(Cells(21, 8), 2)

Label28.Caption = FormatNumber(Cells(23, 9), 2)

Из ячейки (25,9) число передается в целом формате.

Label30.Caption = FormatNumber(Cells(25, 9), 0)

End Sub

 

Программирование кнопки «ГРАФИК»

Private Sub CommandButton3_Click()

График ‘ Вызов на выполнение макроса График

End Sub

 

Макрос «ГРАФИК» получен действиями п.5.

Sub График()

' График Макрос

' Макрос записан 21.11.2010 (timuhina)

Range("A15:H15,A21:H21").Select

Charts.Add

ActiveChart.ApplyCustomType ChartType:=xlBuiltIn, TypeName:= _

"График|гистограмма 2"

ActiveChart.SetSourceData Source:=Sheets("Решение").Range("A15:H15,A21:H21") _

, PlotBy:=xlRows

ActiveChart.SeriesCollection(1).Values = "=Решение!R15C3:R15C8"

ActiveChart.SeriesCollection(2).Values = "=Решение!R21C3:R21C8"

ActiveChart.Location Where:=xlLocationAsNewSheet

With ActiveChart

.HasTitle = False

.Axes(xlCategory, xlPrimary).HasTitle = True

.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "№ самосвала"

.Axes(xlValue, xlPrimary).HasTitle = True

.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = _

"Количество самосвалов"

.Axes(xlCategory, xlSecondary).HasTitle = False

.Axes(xlValue, xlSecondary).HasTitle = True

.Axes(xlValue, xlSecondary).AxisTitle.Characters.Text = _

"Производительность самосвалов, тыс.т"

End With

With ActiveChart.Axes(xlCategory)

.HasMajorGridlines = True

.HasMinorGridlines = False

End With

With ActiveChart.Axes(xlValue)

.HasMajorGridlines = True

.HasMinorGridlines = False

End With

ActiveChart.HasLegend = True

ActiveChart.Legend.Select

Selection.Position = xlTop

End Sub

 

Результат выполнения макроса – построение графика представлен на рисунке 2.

 

Программирование отклика кнопки «Закрыть форму».

Откройте форму2, затем 2 раза щелкните по кнопке «ЗАКРЫТЬ» и напишите процедуру.

Private Sub CommandButton2_Click()

UserForm2.Hide’ Скрыть форму2

End Sub

7. ИСПОЛЬЗОВАНИЕ ИНТЕРФЕЙСА ДЛЯ РАБОТЫ С ТАБЛИЦЕЙ

 

7.1. Добавление записей в таблицу. Нажмите на кнопку «ДОБАВЛЕНИЕ И УДАЛЕНИЕ автосамосвалов», расположенную на рабочем листе. Откроется форма1 (см. рисунок 7), счетчиком установите значения полей на первой пустой записи (в нашем примере запись 4), заполните поля формы1 значениями, нажмите на кнопку «Добавить запись», данные перепишутся в таблицу. По введённым данным рассчитается суммарная производительность. Добавьте ещё записи в таблицу.

 

 

Рисунок 7 – Добавление записей с помощью формы 1.

 

7.2. Удаление записей из таблицы. Счетчиком формы1 выберите номер, удаляемой записи. В полях формы отразятся значения ячеек таблицы из этой записи. Нажмите на кнопку «Удалить запись». В таблице запись будет удалена, нижележащие записи поднимутся вверх. В полях формы отразятся значения ячеек следующей строки (см. рисунок 8). В примере удалена 4 запись – самосвал ВК 889.

 

Рисунок 8 – Удаление 4 записи из таблицы с помощью формы1.

 

 

Рисунок 9 – Запуск формы2.

 

7.3. Вывод итоговых результатов. Нажмите на кнопку «Посмотреть ИТОГИ», расположенную на форме1. Будет запущена форма2 (см. рисунок 9). Нажмите на кнопку «ПОКАЗАТЬ» формы2. В форму2 будут выведены итоговые показатели с листа Excel (см. рисунок 10).

 

 

Рисунок 10 – Просмотр результатов расчета

8 РАЗРАБОТКА БАЗЫ ДАННЫХ

8.1 В программе Access создаем базу данных [5], в которой будут храниться данные аналогичные тем, что приведены таблице Excel.

На основании приведенных данных в таблице Excel создаем таблицу 3, содержащую описание полей производительности автосамосвалов по месяцам: январь, февраль, март, апрель, май, июнь. Эту таблицу создадим в среде Access.

 

Таблица 3 - Проектирование таблицы «Производительность»

Имя поля Тип Свойства поля Подпись
Код самосвала Счетчик    
Номер самосвала Числовой    
Январь Числовой    
Февраль Числовой    
Март Числовой    
Апрель Числовой    
Май Числовой    
Июнь Числовой    

8.2 Загружаем программу Access и выбираем команду «Создание новой базы данных», задаем имя базы данных Автосамосвалы.mdb. Выбираем объект «Таблицы», команду «Создать таблицу» в режиме «Конструктор». Вводим имена полей, задаем тип полей и заносим характеристики полей создаваемой таблицы (см. таблицу 3). После конструирования таблицы сохраняем её с заданием имени таблицы "Производительность". Открываем созданную таблицу (см. рисунок 11) и заносим в неё значения аналогичные таблице Excel (см. рисунок 1 или таблицу 1).

 

 

Рисунок 11 – Таблица «Производительность»

8.3.1 В окне базы данных выбираем объект «Формы» и команду «Создать» – «Автоформа: в столбец». Форму сохраняем под именем "Производительность" (см. рисунок 12).

 

 

Рисунок 12 – Форма «Производительность»

8.4 Разработка запроса с вычисляемым полем по суммарной производительности каждого самосвала. Переходим на вкладку «Запросы». Выбираем «Создание запроса в режиме конструктора», выбираем таблицу «Производительность», отбираем все поля из этой таблицы в запрос. При закрытии запроса сохраняем его, открываем, проверяем правильность выполнения. Создаем вычисляемое поле в запросе, для чего открываем запрос в Конструкторе, выбираем свободное поле, в конце занятых полей, открываем «Построитель выражений» и формируем в нем выражение для вычисляемого поля «СумПроизв» (см. рисунок 13).

 

 

Рисунок 13 – Формирование вычисляемого поля в «Построителе выражений».

 

Сохраняем и выполняем запрос, результат выполнения запроса представлен на рисунке 14.

 

 

Рисунок 14 – Запрос «Суммарная производительность»

 

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

Для просмотра кода SQL созданного запроса, откройте его в Конструкторе запросов и выполните команду ЗАПРОС – Запрос SQL. Ниже приведен код запроса «Суммарная производительность».

SELECT Производительность.НомерСамосвала, Производительность.Январь, Производительность.Февраль, Производительность.Март, Производительность.Апрель, Производительность.Май, Производительность.Июнь, [Январь]+[Февраль]+[Март]+[Апрель]+[Май]+[Июнь] AS СумПроизв

FROM Производительность;

После слова SELECT указаны поля, отобранные в запрос и в том числе вычисляемое поле. После слова FROM указано имя таблицы из которой отобраны поля.

8.5 Отчет разрабатывается с использованием «Мастера отчетов», основой для отчета могут служить таблицы и запросы. В нашем случае основой отчета будет запрос, отбираем в него нужные поля из запроса, если данные можно сгруппировать, то нужно выполнить группировку и получить итоги по группе. В нашем примере группировки нет, поэтому итоговые поля вставим в отчет вручную в режиме «Конструктора». Для этого после создания отчета «Мастером» откройте его, посмотрите на результат, чтобы увидеть все недостатки и переключите отчет в режим «Конструктора».

8.6 Добавление вычисляемого поля в отчет (см. рисунок 15).

 

 

Рисунок 15 – Добавление вычисляемого поля в отчет в режиме «Конструктора»

 

Увеличьте мышью раздел «Примечание отчета» и вставьте в него поле ввода с Панели инструментов «Элементы управления», например под столбец Январь и наберите в поле формулу =Sum([Январь]). Название поля [Январь] не вводите вручную, а перетащите мышкой из списка полей, который вызовите командой «ВИД – Список полей». Проверьте работоспособность этой формулы, затем скопируйте эту формулу под все столбцы и замените в них названия полей на Февраль, Март, Апрель, Май, Июнь и СумПроизв соответственно. Вставьте надписи в области заголовка и примечания отчета и введите в них текст «Итоги работы автопредприятия» и «Директор предприятия Иванов И.И.». Отформатируйте эти надписи, изменив шрифт, его высоту, начертание, цвет.

Откройте отчет для просмотра, его вид представлен на рисунке 16.

 

 

Рисунок 16 – Вид отчета



Поделиться:


Последнее изменение этой страницы: 2016-09-13; просмотров: 227; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.141.202.187 (0.142 с.)