Dim k1 As Integer, k2 As Integer

k1 = 0: k2 = 0

For i = 7 To Ndata

x = Worksheets(" Лист1 ").Cells(i, 4)

‘расчет количества дней с положительной температурой k1 и отрицательной температурой k2

If x > 0 Then k1 = k1 + 1 Else k2 = k2 + 1

Next

Worksheets(" Лист1 ").Cells(Ndata + 5, 4) = _ «Кол.дней с плюсовой темп."

Worksheets(" Лист1 ").Cells(Ndata + 5, 7) = k1

Worksheets(" Лист1 ").Cells(Ndata + 6, 4) = _

" Кол.дней с минусовой темп."

Worksheets(" Лист1 ").Cells(Ndata + 6, 7) = k2

End Sub

Содержание заданий

1. Разработать программу по условиям, приведенным в табл. 7.1.

2. Создать кнопку «Сумма» и написать программу, вычисляющую сумму элементов массива из табл. 7.1.

3. Для командной кнопки «Произведение» создать и выполнить программу, вычисляющую произведение элементов массива.

4. Для командной кнопки «Максимум» создать и выполнить программу, вычисляющую максимальный элемент массива.

Таблица 7.1

Формула для вычислений Исходные данные
Dim k1 As Integer, k2 As Integer - student2.ru Dim k1 As Integer, k2 As Integer - student2.ru
Dim k1 As Integer, k2 As Integer - student2.ru Dim k1 As Integer, k2 As Integer - student2.ru
Dim k1 As Integer, k2 As Integer - student2.ru Dim k1 As Integer, k2 As Integer - student2.ru
Dim k1 As Integer, k2 As Integer - student2.ru Dim k1 As Integer, k2 As Integer - student2.ru
Dim k1 As Integer, k2 As Integer - student2.ru Dim k1 As Integer, k2 As Integer - student2.ru
  Dim k1 As Integer, k2 As Integer - student2.ru Dim k1 As Integer, k2 As Integer - student2.ru
Dim k1 As Integer, k2 As Integer - student2.ru Dim k1 As Integer, k2 As Integer - student2.ru
  Dim k1 As Integer, k2 As Integer - student2.ru   Dim k1 As Integer, k2 As Integer - student2.ru
  Dim k1 As Integer, k2 As Integer - student2.ru Dim k1 As Integer, k2 As Integer - student2.ru
Dim k1 As Integer, k2 As Integer - student2.ru   Dim k1 As Integer, k2 As Integer - student2.ru
Dim k1 As Integer, k2 As Integer - student2.ru Dim k1 As Integer, k2 As Integer - student2.ru
Dim k1 As Integer, k2 As Integer - student2.ru   Dim k1 As Integer, k2 As Integer - student2.ru
Dim k1 As Integer, k2 As Integer - student2.ru   Dim k1 As Integer, k2 As Integer - student2.ru
Dim k1 As Integer, k2 As Integer - student2.ru   Dim k1 As Integer, k2 As Integer - student2.ru
Dim k1 As Integer, k2 As Integer - student2.ru Dim k1 As Integer, k2 As Integer - student2.ru

5. Выполнить приведенный выше пример программы расчета температуры воздуха.

6. Разработать и оформить на рабочем листе программу по условиям задач, данным ниже. Проверить полученный результат с помощью формул Excel.

· Известен возраст 10 человек. Определить сколько из них могут рассматриваться в качестве претендентов при приеме на работу в фирму, если по условиям приема возраст претендента не должен превышать 40 лет.

· Известна информация о багаже (количество вещей и общий вес багажа) 10 пассажиров. Найти число пассажиров, имеющих более двух вещей.

· Известны места занятые футбольной командой в течении последних 10 лет. Определить сколько раз эта команда была призером чемпионата (призерами считаются команды, занявшие первые три места).

ФОРМЫ ПОЛЬЗОВАТЕЛЯ

Управление электронными документами в Excel может производиться с помощью вспомогательных окон, которые называются пользовательскими формами UserForms.

Свойства и методы элементов управления. Списки

Для того чтобы в проект документа включить диалоговую пользовательскую форму необходимо в окне редакторе VBA (открывается командой Сервис/Макрос/Редактор Visual Basic) выполнить команду Вставка/UserForm (Insert/UserForm). После этого в проект документа добавится объект UserForm1, а на экране появится заготовка для формы пользователя с именем UserForm1 и панель элементовToolbox, почти совпадающая с панелью инструментов Элементы управления.

На форме пользователя так же, как и на рабочем листе, можно создавать кнопки (CommandButton), текстовые поля (TextBox), надписи (Label), комбинированные (раскрывающиеся) списки (ComboBox) и другие объекты.

Свойства объектов можно задавать не только в окне свойств, но и программным путем. Например, можно создать форму UserForm1 и на рабочем листе расположить кнопку со следующей программой:

Private Sub CommandButton1_Click()

UserForm1.BackColor = RGB(255, 0, 0)

UserForm1.Show

End Sub

При выполнении этой программы появляется форма, окрашенная в красный цвет. Здесь BackColor–цвет фона, его значение задается функцией RGB. В этой функции определяются цвета цифрами от 0 до 255: оттенки красного на первом месте (red), оттенки зеленого (green) – на втором, оттенки синего (blue) – на третьем.

Для появления на экране пользовательской формы UserForm1в программном коде используется метод Show (UserForm1.Show):

Чтобы убрать форму можно использовать метод Hide.

VBA предоставляет возможность использования элементов управления, служащих для хранения и обработки одномерных массивов. Это простые списки ListBoxикомбинированные (раскрывающиеся) списки ComboBox. Комбинированные списки, в отличие от простых, содержат, кроме собственно списка, еще и текстовое поле, через которое можно записывать и вводить данные в список, добавляя последовательно к существующим новые элементы массива.

Основные свойства списков: List(i) – i-й элемент в списке; ListIndex – номер выбранного элемента в списке; ListCount – количество элементов в списке; RowSource – источник заполнения списка ComboBox или ListBox.

Основные методы обработки списков: AddItem – добавить элемент в список; Clear – удалить весь массив из списка.

Пример работы с формой пользователя

Пример. Пусть имеется список группы, в котором содержатся сведения об оценках, полученных студентами во время сессии (рис. 8.1).

Dim k1 As Integer, k2 As Integer - student2.ru

Рис. 8.1 – Рабочий лист Excel со списком группы

Требуется посчитать средний балл для конкретного студента, выбранного из списка.

На рабочем листе с помощью панели Элементы управления создана кнопка с надписью «Средний балл».

Для выбора фамилии студента разработана форма, представленная на рис. 8.2. На этой форме с именем UserForm1создан комбинированный список ComboBox1с надписью «Раскройте список, выберите фамилию, нажмите кнопку» в элементе управления Label1. Командная кнопка с заголовком «Расчет среднего балла» запускает программу расчета. В поле TextBox1 выводится полученный результат, перед этим полем в метке Label2 сделана надпись «Средний балл».

Dim k1 As Integer, k2 As Integer - student2.ru

Рис. 8.2 – Пользовательская форма

Для кнопки «Средний балл», которая находится на рабочем листе Лист1, процедура может иметь следующий вид:

Sub CommandButton1_Click()

I=4

Do Until Worksheets(“Лист1”).Cells(I,1)=””

I=I+1

Loop

J=I-1

UserForm1.ComboBox1.RowSource = "Лист1!b4:b” & J

UserForm1.Show

End Sub

Здесь ””означает пустую ячейку. В переменной J определяется номер последней заполненной строки в таблице. Затем с помощью метода RowSourceзаполняется комбинированный список ComboBox1информацией из ячеек b4:bJ.С помощью метода Showформа вызывается на экран.

Процедура для кнопки «Расчет среднего балла»:

Sub CommandButton1_Click()

n = UserForm1.ComboBox1.ListIndex + 1

s = 0

For i = 1 To 4

b = Worksheets("Лист1").Cells(n + 3, i + 2).Value

s = s + b

Next

a = s / 4

UserForm1.TextBox1.Text = a

End Sub

В этой программе определяется номер выбранного элемента списка посредством свойства ListIndex, а затем высчитывается средний балл. Полученный результат помещается в текстовое окно TextBox1 на форме.

Содержание заданий

1. Создать в Excel таблицу, пользовательскую форму, записать для них программы в соответствии с приведенными выше примерами. Опробовать работу программ.

2. Добавить в таблицу дополнительные сведения о годе рождения студентов, адресе и т.п.

3. Пусть имеется список товаров на листе Excel. Разработать пользовательскую форму, в которой из раскрывающегося списка товаров можно было бы выбрать нужный товар, и, при нажатии кнопки на этой форме, в текстовом окне отображалась бы цена товара.

ПРИЛОЖЕНИЕ MATHCAD

Приложение Mathcad предназначено для выполнения различных расчетов, для работы с графическими изображениями.

Объединение текстового, формульного и графического редакто­ров с вычислительным ядром позволяет готовить электронные документы с высоким качеством оформления, способные выполнять расчеты с наглядной демонстрацией результатов.

Для удобства работы с математическими выражениями в приложении имеется панель Математика, которая служит для вывода на экран еще 9 панелей: Арифметика Dim k1 As Integer, k2 As Integer - student2.ru – для вставки цифр и основных математических операторов; Графики Dim k1 As Integer, k2 As Integer - student2.ru – для построения графиков; Матрицы Dim k1 As Integer, k2 As Integer - student2.ru – для работы с матрицами; Вычисления Dim k1 As Integer, k2 As Integer - student2.ru– для вставки операторов управления вычислениями; Матанализ Dim k1 As Integer, k2 As Integer - student2.ru – для использования операторов дифференцирования, интегрирования, пределов, сумм и произведений; Логический (Булево) Dim k1 As Integer, k2 As Integer - student2.ru – для вставки логических операторов; Программирование Dim k1 As Integer, k2 As Integer - student2.ru – для программирования средствами Mathcad; Греческий алфавит Dim k1 As Integer, k2 As Integer - student2.ru – для вставки греческих символов; Символы Dim k1 As Integer, k2 As Integer - student2.ru – для вставки ключевых слов и операторов символьных вычислений.

Вывод на экран и отключение панелей производится при помощи пункта меню Вид/Панели инструментов. Многие операторы, имеющиеся на этих панелях, можно также ввести и с клавиатуры. Комбинации клавиш отображаются во всплывающих подсказках при наведении на соответствующие кнопки панелей указателя мыши.

Ввод информации

Текст.Для работы с текстом надо ввести знак двойной кавычки или выбрать пункт меню Вставить/Текстовая область– появится прямоугольник с курсором ввода в виде красной вертикальной черты. При вводе русскоязычного текста надо использовать шрифт, заканчивающийся, словом Суг. Для перехода на новую строку используется клавиша Enter.Завершается ввод щелчком мыши вне рамки.

Форматирование текста возможно тогда, когда курсор ввода находится в рамке текстового поля. Для установки параметров форматирования можно использовать панель инструментов или команду меню Формат/Текст.

Выделенные рамкой текстовые блоки можно переносить на другое место.

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

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

Mathcad различает регистр букв, например, переменные х и X считаются разными.

Для присвоения переменной некоторого значения используется оператор присваивания «:=», который с клавиатуры вводится нажатием клавиши с двоеточием.

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

Допустим, переменная x меняется от 1 до 2 с шагом 0,1, тогда она будет выглядеть следующим образом: x:=1,1.1..2. Здесь символ «..» появляется после нажатия клавиши (;) на клавиатуре, либо кнопки Dim k1 As Integer, k2 As Integer - student2.ru на панели Матрицы.

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

Встроенные функции. Mathcad поддерживает множество встроенных функций. Например: ехр(х) – экспонента (соответствует eх); ln(x), log(x) – натуральный и десятичный логарифм; log(x,n)– логарифм х по основанию n; sin(x), cos(x), tan(x), cot(x), sec(x), csc(x)– тригонометрические функции соответственно синус, косинус, тангенс, котангенс, секанс и косеканс; asin(x), acos(x), atan(x), acot(x), asec(x), acsc(x) – обратные тригонометрические функции.

Для организации разветвлений используется встроенная функцияif(cond, x, y).Если условие cond выполняется, то функция принимает значение x, в противном случае – значениеy.

Например:

Dim k1 As Integer, k2 As Integer - student2.ru
Dim k1 As Integer, k2 As Integer - student2.ru
Dim k1 As Integer, k2 As Integer - student2.ru
Dim k1 As Integer, k2 As Integer - student2.ru
Dim k1 As Integer, k2 As Integer - student2.ru
Dim k1 As Integer, k2 As Integer - student2.ru
Здесь
Dim k1 As Integer, k2 As Integer - student2.ru
- логическое выражение имеет значение "истина"

Чтобы вставить встроенную функцию, надо выбрать кнопку f(x) на панели инструментов или выбрать пункт меню Вставить/Функция и в открывшемся диалоговом окне выбрать необходимую категорию, а затем функцию. Щелкнуть по кнопке Вставить. После этого в окне редактирования появится шаблон функции, в который надо ввести аргументы. Функция может быть также набрана и непосредственно с клавиатуры.

Создание функций пользователя.Для того чтобы определить функцию пользователя, необходимо ввести имя функции и в скобках ввести через запятую имена переменных. Например: f(x,y):=x2+y2

После определения функции ее можно использовать точно так же, как и встроенные функции.

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

Форматирование математических выражений может относиться к переменным (Variables) или константам (Constants). Выбор объекта форматирования производится командой Формат/Уравнение,в диалоговом окне задается стиль Variables или Constants.Затем устанавливаются желаемые параметры форматирования.

При желании можно изменить цвет листов документов. Для выбора произвольного цвета заливки: Формат/Цвет/Фон.

Вычисление сумм и произведений.Для вычисления сумм и произведений вводится соответствующее выражение с помощью панели Матанализ и выбирается пункт меню Символика/Упрощение или вводится оператор символьного вывода (/) панели Символы.

Дифференцирование и интегрирование.Надо ввести выражение, стоящее под знаком дифференциала или подынтегральное выражение, выделить переменную дифференцирования или интегрирования и выполнить Символика/Переменная/Дифференциация или Интеграция.

Можно также ввести нужное выражение производной или интеграла с помощью панели Матанализи записать оператор символьного вывода /.

Матричные вычисления. Чтобы создать матрицу, надо ввести ее имя, знак присваивания и выполнить Вставка/Матрица либо нажать кнопку Матрица или вектор на панели Матрица (либо «горячие» клавиши Ctrl + M).

В появившемся окне задать количество строк и столбцов, затем ввести конкретные значения элементов матрицы.

Номер первого элемента массива по умолчанию равно 0. Mathcad допускает обращение к отдельным элементам матриц и векторов с помощью нижних индексов и к столбцам матриц с помощью верхних индексов. Нижние индексы вводятся с помощью кнопки Хn панели Матрица или клавишей открывающей квадратной скобки ([). Нижние индексы, если их несколько, отделяются друг от друга запятой. Верхние индексы вводятся кнопкой М<> панели Матрица.

Графики

Mathcad позволяет строить двумерные графики (XY график в декартовой системе координат, полярные графики в полярной системе координат) и трехмерные графики (график трехмерной поверхности, график линий уровня, трехмерная гистограмма, трехмерное множество точек, векторное поле).

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

Сначала нужно определить значения аргумента (или нескольких аргументов) и вид функции (или нескольких функций). Затем надо поместить курсор в то место, куда требуется вставить график и при помощи меню Вставить/График или панели График выбрать X-Y графикилиПолярный график.

В появившейся пустой области графика в местозаполнители возле осей надо ввести имена аргумента и функции (для нескольких – через запятую). Например, на рис. 8.1 представлены два графика для значений х, меняющихся от –3 до 2 с шагом 0,1:

x := – 3, – 2.9 .. 2

y1(x) := cos(x) y2(x) := sin(x)

Dim k1 As Integer, k2 As Integer - student2.ru

Рис. 9.1 –Графики в приложенииMathcad

На вкладке Метки можно задать название графика, его расположение и отображение, названия и отображение меток осей.

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

Содержание заданий

1. Ввести текстовый заголовок к работе.

Dim k1 As Integer, k2 As Integer - student2.ru 2. Произвести символьные вычисления, упростить сложные результаты.

3. Записать пользовательскую функцию и вычислить ее значения при x=-5, x=0,3, x=4.

Dim k1 As Integer, k2 As Integer - student2.ru

4. Пусть заданы матрицы:

А= Dim k1 As Integer, k2 As Integer - student2.ru В= Dim k1 As Integer, k2 As Integer - student2.ru С= Dim k1 As Integer, k2 As Integer - student2.ru

Вычислить D=AC, F=A-1B, AT Найти определитель матрицы В.

5. Построить графики зависимостей y = k×x3+2×x2–5×x–2. Значение k выбрать произвольно. Произвести форматирование полученных графиков.

Наши рекомендации