Удобной мерой вариации является значение дисперсии баллов, обозначаемой символом
. Для заданий, в которых используется только дихотомическая оценка (1 или 0), мера вариации определяется по сравнительно простой формуле: (5)Значения дисперсии по каждому заданию, рассчитанные по этой формуле, представлены в пятой строке нижней части таблицы 2.
Помимо вариации баллов в каждом задании считается вариация тестовых баллов испытуемых, набранных ими в тесте, по всем заданиям. Расчет показателей вариации тестовых баллов начинается с определения суммы квадратов отклонений значений баллов от среднего арифметического тестового балла (
), по формуле: (6)Для данных таблицы 2:
(7)У показателя SSy тоже есть недостаток, который заключается в его зависимости от числа испытуемых: при прочих равных условиях, чем больше группа, тем большей оказывается
, что делает этот показатель несопоставимым для групп с разным числом испытуемых. Поэтому для исправления отмеченного недостатка используют второй прием - делят на число испытуемых в группе. В результате получается стандартный показатель вариации тестовых баллов, называемый дисперсией или, по-старому, вариансой.Для тестовых баллов в столбце
табл. на рис.2 дисперсия вычисляется по формуле: (8)При N, равном тринадцати испытуемым, дисперсия равна:
(9)Для удобства в интерпретации тестовых результатов вместо дисперсии часто используется стандартное отклонение тестовых баллов от средней арифметической. Оно обозначается символом Sy и вычисляется как корень квадратный из значения sy2.
(10)Стандартное отклонение Sy является общепринятой мерой вариации тестовых баллов.
Подставляя наши данные, получаем
(11)Дифференцирующая способность является четвертым требованием к тестовым заданиям.
Если на какое-то задание правильно отвечают все тестируемые, то такое задание не дифференцирует сильных от слабых и потому ему в тесте делать нечего. Нет в тесте места и тем заданиям, на которые нет ни одного правильного ответа; в матрице по ним ставят одни нули.
4. Visual Basic for Applications (VBA)
Программирование в Excel , в основном, сводится к управлению объектами. Эта задача выполняется с помощью инструкций, введённых на языке, понятном Excel .
Visual Basic For Application ( далее VBA ) – немного упрощённая реализация языка программирования Visual Basic , встроенная в линейку продуктов Microsoft Office (включая версии для Mac OS), а так же во многие другие программные пакеты, такие как AutoCAD, WordPerfect и ESRI ArcGIS. VBA покрывает и расширяет функциональность ранее использовавшихся специализированных макро-языков, таких как WordBasic.
VBA является интерпретируемым языком. Как и следует из его названия, VBA близок к Visual Basic, но может выполняться лишь в рамках приложения, в которое он встроен. Кроме того, он может использоваться для управления одним приложением из другого, с помощью OLE Automation (например, таким образом можно создать документ Word на основе данных из Excel). В будущем Microsoft планирует заменить VBA на Visual Studio Tools for Applications (VSTA) — инструментарий расширения функциональности приложений, основанный на Microsoft .NET.[6]
VBA в настоящее время входит в состав всех приложений Microsoft Office и даже приложений других компаний. Следовательно, овладев VBA для Excel, можно сразу перейти к созданию макросов для других программных продуктов Microsoft (равно, как и приложений других компаний). Более того, можно создавать полноценные программные продукты, одновременно использующие функции самых разных приложений.
4.1 Объектные модели
Секрет использования VBA заключается в правильном понимании объектной модели в каждом отдельном приложении. Следует отметить, VBA всего лишь управляет объектами, а у каждого программного продукта (Excel, Word, Access, PowerPoint и т.п.) своя объектная модель. Приложением можно управлять программным образом только с помощью объектов, которые представлены в этом приложении.
Например, в объектной модели Excel представлено несколько мощных объектов анализа данных, например, рабочие листы, диаграммы, сводные таблицы, сценарии, а также многочисленные математические, финансовые, инженерные и общие функции. С помощью VBA можно работать с этими объектами и разрабатывать автоматизированные процедуры.
4.2 Основы VBA
Предназначение VBA:
1.Действия в VBA осуществляются в результате выполнения кода VBA.
2. Разработчик создаёт (или записывает) программу VBA, которая сохраняется в модуле VBA
Модуль VBA состоит из процедур.
Процедура, по существу, представляет собой элемент компьютерной программы, выполняющей определенное действие. Ниже приведен пример простой процедуры под названием Test: она вычисляет сумму, а затем отображает результат в окне сообщений:
Sub Test ()
Sum =1+1
MsgBox "Ответ: " & Sum
End Sub
Кроме процедур Sub, в модуле VBA может использоваться второй тип процедур — функции.
Процедура функции возвращает одно значение (или массив). Функция может быть вызвана из другой процедуры VBA или использоваться в формуле рабочего листа. Ниже приведен пример функции с названием AddTwo:
Function AddTwo(arg1, arg2)
AddTwo = arg1 + arg2
End Function
Excel позволяет управлять более, чем ста классами объектов, включая рабочую книгу, рабочий лист, диапазон ячеек рабочего листа, диаграмму и нарисованный прямоугольник. В распоряжении разработчика находятся и другие объекты, с которыми можно работать в VBA.
4.3 Классы объектов
Классы объектов в VBA организованы в иерархическую структуру.
Объекты могут быть контейнерами для других объектов. Например, Excel — это объект под названием Application, он содержит другие объекты, например, Workbook (Рабочая книга).
Объект Workbook может состоять из других объектов, например, Worksheet (Рабочий лист) и Chart (Диаграмма).
Объект Worksheet также содержит объекты, например, Range (Диапазон), PivotTable (Сводная таблица) и т.д. Организацию таких объектов называют объектной моделью Excel.
Одинаковые объекты формируют коллекцию.
Например, коллекция Worksheets состоит из всех рабочих листов конкретной рабочей книги, а коллекция CommandBars — из всех объектов CommandBar. Коллекции — это объекты в себе.
При ссылке на объект, вложенный в другой объект, положение в иерархической структуре объектной модели задается с помощью точки-разделителя.
Например, на рабочую книгу с названием Книга1.xls можно сослаться следующим образом:
Application. Workbooks(«Книга1.xls»)
Это ссылка на рабочую книгу Книга1.xls в коллекции Workbooks. Коллекция Workbooks находится в объекте Application. Переходя на следующий уровень, можно сослаться на лист под названием «Лист1» в книге Книга1.xls:
Application. Workbooks («Книга1.хls») .Worksheets («Лист1»)
Сослаться на ячейку, перейдя на один уровень ниже, следующим образом:
Application. Workbooks(«Книга1.xls»).Worksheets(«Лист1»).Range(«А1»)
При опущенной ссылке на объект Excel по умолчанию используются активные объекты. Если книга Лист1 — активная рабочая книга, то предыдущую ссылку можно упростить: Worksheets («Лист1»).Range(«А1»)
Если лист «Лист1» — активный, то ссылку можно упростить еще больше:
Range(«A1»)
4.4 Свойства объектов
Свойство можно считать параметром или настройкой объекта. Например, объект диапазона имеет такие свойства, как Value (Значение) и Name (Имя). Объект диаграммы обладает такими свойствами, как HasTitle (Заголовок) и Туре (Тип). Разработчик вправе использовать VBA, чтобы задать свойства объектов и их изменить.
Свойства в программном коде отделяются от названия объекта точкой.
Например, можно сослаться на значение в ячейке А1 листа «Лист1» следующим образом:
Worksheets («Лист1»).Range(«А1»).Value
Пользователь вправе присваивать значения переменным VBA. Переменную можно считать константой, которая используется для хранения конкретного значения.
Чтобы присвоить значение ячейки А1 листа Лист1 переменной с названием Interest, можно использовать следующий оператор VBA:
Interest = Worksheets («Лист1»).Range («А1») .Value
4.5 Методы
У объектов есть методы.
Метод - это действие, которое выполняется над объектом. Например, один из методов объекта Range — ClearContents. Этот метод удаляет содержимое диапазона ячеек.
Методы вводятся после названия объекта с методом, в роли разделителя выступает точка.
Например, для удаления содержимого ячейки А1 активного рабочего листа используется следующая команда:
Range(«А1») .ClearContents
4.6 Редактор VBE
В Excel 5 и Excel 95 модуль VBA записывался на отдельном листе рабочей книги. Начиная с версии Excel 97t модули VBA уже не представляются в виде листов рабочей книги. Вместо этого для работы и просмотра модулей VBA используется редактор Visual Basic (VBE — Visual Basic Editor).