Пример 2: (разветвляющийся алгоритм)
Для функции
2x2 - 4x + 5 , х<-1
y= 10sin(x2) + 5cos(x), -1<=x<=1
ex – 17 , x>1
процедура - функции будет выглядеть следующим образом:
Public Function Y(x)
If x <-1 Then
y = 2 * x ^ 2 - 4 * x + 5
ElseIf x <= 1 Then
y = 10 * Sin(x ^ 2) + 5 * Cos(x)
Else
y = Exp(x) - 17
End If
End Function
Пример 3: (циклический алгоритм)
процедуры-функции для табулирования функции y(x) на [a; b] с шагом h = (b - a) / n
Public Function TbF(a, b, n)
ReDim xy(n, 1)
' xy - массив из двух столбцов
' xy(i,0) - столбец значений х
' xy(i,1) - столбец значений y
h = (b - a) / n : x=a
For i = 0 To n
xy(i, 0) = x
xy(i, 1) = y(x)
x = x + h
Next i
TbF = xy
End Function
Замечание1: функцию с атрибутом Public можно использовать в любом модуле, a Private - только в данном модуле
Замечание2. При задании функции нескольких переменных в процедуре VBA аргументы разделяются запятыми, а при вызове этой функции, задаваемом при записи в ячейке соответствующей формулы аргументы разделяются символом; (точка с запятой).
Теперь, если вызвать мастер функций, то появляется дополнительная категория функций Определенные пользователем в которой появится созданная функция, а также имя функции будет видно в полном алфавитном перечне. Это означает, что созданной функцией можно пользоваться наравне с обычными встроенными функциями рабочего листа.
Обсудим вопрос о том, как можно осуществить ввод данных с рабочего листа и их вывод на рабочий лист. Для этого в Excel есть специальная конструкция:
Cells(i, j).Value
Эта конструкция позволяет получить доступ к ячейке на пересечении строки номер i и столбца номер j на активном рабочем листе (обратите внимание, что номер столбца, как и номер строки, задается числом). С ее помощью можно, как читать данные с листа, так и вывести их на рабочий лист.
Примеры:
Выражение | Пояснение |
Cells(1,1).Value = 5 | В ячейку A1 записывается число 5. Эту операция можно рассматривать как операцию вывода на рабочий лист |
Beta=Cells(3,5).Value | Переменной Beta присваивается значение из ячейки E3. Эту операция можно рассматривать как операцию ввода с рабочего листа |
Cells(1,2).Value=Cells(4,3).Value | В ячейку B1 копируется значение ячейки C4 |
Обычный (привычный) адрес ячейки можно задавать в другой конструкции Excel:
Range("<адрес ячейки>").Value
Будем считать, что значение Х находится в ячейке B3. Для размещения результата работы программы отведем ячейку D3.
Тогда текст программы может быть таким:
Public Sub Primer()
x = Cells(3, 2).Value ¢Считываем X
If x <-1 Then
y = 2 * x ^ 2 - 4 * x + 5
ElseIf x <= 1Then
y = 10 * Sin(x ^ 2) + 5 * Cos(x)
Else
y = Exp(x) - 17
End If
Cells(3, 4).Value = Y ¢Выводим число Y
End Sub
Работа с данными в EXCEL: сортировка, итоги.
Сортировка данных.
Excel позволяет упорядочить данные, приведенные в таблице.
Числа сортируются от наименьшего отрицательного до наибольшего положительного числа.
При сортировке алфавитно-цифрового текста Excel сравнивает значения посимвольно слева направо.
По умолчанию в таблице элементы в выделенном поле сортируются по алфавиту в возрастающем порядке (от А до Я).
Если объект находится внутри одной строки или столбца, то вместе с данными Excel сортирует и объекты.
Для сортировки данных необходимо выбрать пункт Данные – Сортировка или использовать кнопки на стандартной панели инструментов, выделив столбец, по которому необходимо сортировать записи.
Стандартные средства Excel позволяют одновременно сортировать записи по трем полям. При необходимости сортировки по четырем и более полям следует выполнить несколько последовательных сортировок.
Последовательность сортировки полей выбирается в диалоговом окне Сортировка диапазона в раскрывающихся списках Сортировать по, Затем по, В последнюю очередь, по.
Расположенные рядом с каждым списком переключатели по возрастанию, по убыванию позволяют задать направление сортировки.
Переключатель Идентифицировать диапазон данных по можно установить в положения:
• подписям – исключает первую строку с названиями столбцов из сортировки;
• обозначениям столбцов листа – если в сортируемом диапазоне первая строка не содержит названий столбцов.
Для проведения сортировки в особом порядке, например по месяцам: январь, февраль, март и т.п., нажмите кнопку Параметры.
При необходимости можно установить флажок, позволяющий принять во внимание регистр букв. Можно также выбрать направление упорядочения: сверху вниз или слева направо.
Подсчет итогов.
Команда Данные – Итоги позволяет получать сводные данные по числовым параметрам: сумму, минимум, максимум, среднее значение и другие статистические данные.
Предварительно необходимо определить по какому параметру требуется группировать итоги и отсортировать таблицу по этому параметру.
Окно диалога Промежуточные итогисодержит поля “При каждом изменении в:”, “Операция” и “Добавить итоги по:”.
Если флажок “Итоги под данными” не установлен, то итоговые данные выводятся сразу же после шапки таблицы, в ином случае итоговые данные будут размещены в конце таблицы.
Флажок “Конец страницы между группами” позволяет разбить данные по видам и напечатать их на отдельных листах.
Кнопка Убрать все удаляет все итоги и переводит базу данных в исходное состояние.