Прочитать на английском

Поделиться через


Общие сведения о пользовательских функций JavaScript

Определяемые пользователем функции (UDF) JavaScript являются новыми в службы Excel в SharePoint. В этой статье предоставляет подробный обзор пользовательских функций JavaScript, в том числе основные сведения о работе в Службы Excel.

Примечание

Сведения о пользовательских функциях JavaScript для надстроек Office см. в статье Создание пользовательских функций в Excel.

Что такое пользовательских функций

Пользовательские функции (UDF) — это функция самостоятельно создать и затем добавить в список доступных функций в Excel при Excel не предоставляет тип функции, которые должны сразу же после установки.

Службы Excel уже позволяет создавать пользовательские функции с помощью управляемого кода, поэтому если вы работали с существующим Службы Excel пользовательских функций, пользовательских функций JavaScript должны быть знакомы вам. Дополнительные сведения о создании определяемых пользователем функций с помощью управляемого кода см. в разделе Функции службы Excel User-Defined.

Пользовательские функции JavaScript

Пользовательские функции JavaScript, пользовательских функций, которые запускаются в браузере на веб-страницу, состоит в книге внедренных Excel. Используйте JavaScript UDF внутри внедренной книги. До тех пор, пока вы работаете с книгой в браузере, можно использовать JavaScript UDF так же, как использовать функции встроенных Excel. При закрытии веб-страницы в JavaScript UDF больше не доступен.

Как работают JavaScript UDF?

Чтобы использовать JavaScript UDF, необходимо иметь возможность изменения содержимого веб-страницы, где внедрить эту книгу. После добавления ссылки к исходному файлу правильные Службы Excel JavaScript, добавьте код JavaScript UDF на страницу. Кроме того прежде чем использовать JavaScript UDF, сначала необходимо зарегистрировать пользовательскую Функцию в Службы вычислений Excel. JavaScript UDF API предоставляет методы для регистрации и отмены регистрации JavaScript UDF.

Когда веб-страница с веб-частью Excel Web Access или внедренной книгой отрисовывается, вы можете вызвать определяемую пользователем функцию JavaScript в книге так же, как и любую другую книгу Excel.

Например имеется функция, которая получает текущий акций для указанного актива. Можно добавить JavaScript UDF на веб-страницу, на котором размещается книги Excel (предполагается, что у вас есть авторские права для веб-страницы), которые использует JavaScript код следующим образом.


function StockInfo(symbol, measure) {
  var req = new XMLHttpRequest();
  req.open('GET', 'http://www.contoso-stock-quotes.com/quote/' + symbol + '/' + measure, false); 
  req.send(null);
  if (req.status == 200) {
    return req.responseText;
  } else {
    throw new Error(ExcelCalcError.Value);
  }
 
ewa.BrowserUdfs.add("StockQuote",
                       StockInfo,
                       "Gets a stock quote given a security symbol and measure to return."
                       false,
                       false
                       );

Затем можно назвать JavaScript UDF, StockInfo, в формуле из ячейки внутри Excel Online.

Рис. 1. Определяемая пользователем функция JavaScript, вызываемая в Excel Online

Вызов JavaScript UDF в Excel Online

Где можно использовать пользовательские функции JavaScript?

Вы можете создавать и использовать определяемые пользователем функции JavaScript либо в книгах, отображаемых в веб-частях SharePoint Excel Web Access, либо на веб-странице узла с внедренной книгой. Книга должна храниться на Microsoft OneDrive. Основное отличие заключается в том, что определяемые пользователем функции JavaScript, добавляемые в веб-части Excel Web Access, требуют наличия сервера SharePoint. Пользовательские функции JavaScript, добавлена для размещения веб-страницы, внедренной книги требуется только сохранение книги на OneDrive.

Ключевые моменты

  • Пользовательские функции JavaScript только live до тех пор, пока они находятся на веб-страницей, отображается. Они не сохраняются после истечения времени жизни веб-страницы, где они были созданы.

  • Нельзя выполнять вызовы Службы Excel объектной модели JavaScript из в JavaScript UDF.

См. также