Этап 4. Тестирование и вызов пользовательских функций из ячеек
Дата последнего изменения: 30 мая 2008 г.
Применимо к: SharePoint Server 2010
На этом этапе выполняется тестирование сборки SampleUdf.dll, создание, развертывание и включение которой было выполнено в предыдущих действиях. Для тестирования пользовательской функции потребуется выполнить следующие действия:
Создание книги с именованным диапазоном и формулами, которые могут вызывать функции из библиотеки SampleUdf.dll.
Сохранение книги в библиотеку документов SharePoint, которая является надежным расположением.
Примечание
Предполагается, что библиотека документов SharePoint уже создана и выбрано надежное расположение. Дополнительные сведения о присвоении доверия расположению см. в разделе "Настройка надежного расположения" статьи Шаг 3. Развертывание и включение пользовательских функций.
Изменение параметров для пересчета книги.
Тестирование пользовательских функций
Вызов пользовательской функции из ячейки
Запустите Microsoft Office Excel 2007.
В ячейке A1 введите формулу для вызова функции MyDouble из библиотеки SampleUdf.dll. Функция MyDouble принимает аргумент типа double. В этом примере принимается аргумент из ячейки B1. В ячейке A1 введите =MyDouble(B1).
Примечание
Результатом обработки формулы в Excel будет "#NAME?". Вычисление формулы выполняется, только если книга открыта в службах Excel.
Примечание
Пользовательские функции можно выполнять в клиентских и серверных системах. Статья, публикация которой готовится в MSDN, будет включать подробные пояснения. Они не приводятся в этой статье с целью упрощения восприятия материала.
В ячейке B1 введите число 8.
Пометьте ячейку B1 как именованный диапазон. Перейдите на вкладку Формулы. Затем выберите ячейку B1. На вкладке Формулы в группе Именованные ячейки выберите Имя диапазона. В диалоговом окне Новое имя в поле Имя введите MyDoubleParam.
В ячейке A2 введите формулу для вызова функции ReturnDateTimeToday. Введите =ReturnDateTimeToday().
В ячейке A3 введите формулу для вызова функции ReturnDateTimeToday. Введите =ReturnDateTimeToday(). Затем щелкните ячейку A3 правой кнопкой мыши, чтобы вывести контекстное меню. Выберите пункт Формат ячеек.
В диалоговом окне Формат ячеек на вкладке Число выберите Дата. Выберите тип формата даты в списке Тип, например *3/4/2001.
Нажмите кнопку ОК.
Сохраните книгу в любое расположение на жестком диске, присвоив ей имя TestSampleUdf.xlsx.
Сохранение в службы Excel
Нажмите кнопку Microsoft Office, наведите указатель на пункт Сохранить как и выберите Сохранить для служб Excel.
В диалоговом окне Сохранить как щелкните Параметры служб Excel.
В диалоговом окне Параметры служб Excel на вкладке Показать убедитесь, что выбран вариант Всю книгу.
Нажмите кнопку Параметры.
В списке Добавить параметры установите флажок MyDoubleParam.
Нажмите кнопку ОК. Теперь параметр MyDoubleParam должен отображаться в списке Параметры.
Нажмите кнопку ОК.
В диалоговом окне Сохранить как установите флажок Открыть эту книгу в браузере после сохранения.
В поле Имя файла введите путь к надежной библиотеке документов SharePoint, в которую требуется сохранить эту книгу. Например, http://MyServer002/Shared%20Documents/TestSampleUdf.xlsx.
Нажмите кнопку Сохранить. Файл TestSampleUdf.xlsx должен отобразиться в Excel Web Access. В ячейке A1 должно появиться число "72", так как B1 * 9 = 8 * 9 или 72. В ячейке A2 должно появиться число. В ячейке A3 — текущая дата.
Примечание
В ячейке A2 число представляет количество дней с 1/1/1900 (или 1/1/1904, если выбран вариант "Использовать систему дат 1904"). Это метод внутреннего представления дат в Excel.
Изменение параметров для проверки пользовательской функции
В области Параметры должен отображаться именованный диапазон для ячейки B1, то есть MyDoubleParam.
Можно изменить значение в ячейке B1. Для этого нужно ввести число в поле рядом с MyDoubleParam. Например, если ввести 3 и нажать кнопку Применить, службы Excel выполнят пересчет книги. В ячейке A1 вместо "72" будет отображаться "27".
См. также
Задачи
Шаг 1. Создание проекта и добавление ссылки на пользовательскую функцию
Шаг 2. Создание пользовательских функций управляемого кода
Шаг 3. Развертывание и включение пользовательских функций
Создание пользовательской функции, вызывающей веб-службу
Концепции
Пошаговое руководство. Разработка пользовательской функции с управляемым кодом