Freigeben über


Benutzerdefinierte JavaScript-Funktionen (Übersicht)

Benutzerdefinierte JavaScript-Funktionen (UDFs) sind neu in Excel Services und SharePoint. Dieser Artikel bietet eine allgemeine Übersicht über JavaScript UDFs, einschließlich grundlegender Informationen über deren Funktionsweise in Excel Services.

Hinweis

Informationen zu benutzerdefinierten JavaScript-Funktionen für Office-Add-Ins finden Sie unter Erstellen benutzerdefinierter Funktionen in Excel.

Was sind UDFs?

Eine benutzerdefinierte Funktion (UDF) ist eine Funktion, die Sie selbst erstellen können, und fügen Sie der Liste der verfügbaren Funktionen in Excel beim Excel dem Typ der Funktion zur Verfügung steht, sofort einsetzbar werden soll.

Excel Services already allows you to create UDFs using managed code, so if you have worked with the existing Excel Services UDFs, JavaScript UDFs should look familiar to you. Weitere Informationen zum Erstellen von UDFs mit verwaltetem Code finden Sie unter Excel Services User-Defined Functions.

JavaScript-UDFs

JavaScript-UDFs sind UDFs, die auf einer Webseite im Browser ausgeführt werden, die eine Arbeitsmappe eingebettete Excel hat. Verwenden Sie die JavaScript UDF in die eingebettete Arbeitsmappe. Solange Sie mit der Arbeitsmappe im Browser arbeiten, können Sie die JavaScript UDF genau, wie Sie die integrierte Excel-Funktionen verwenden. Wenn die Webseite geschlossen wird, ist die JavaScript UDF nicht mehr verfügbar.

Funktionsweise von JavaScript-UDFs

Um eine JavaScript UDF zu verwenden, müssen Sie haben die Möglichkeit zum Ändern des Inhalts der Webseite, in dem Sie die Arbeitsmappe einbetten. Nachdem Sie die richtigen Excel Services JavaScript-Quelldatei verweisen möchten, fügen Sie Ihrer JavaScript UDF-Code auf der Seite. Darüber hinaus vor der Verwendung von JavaScript UDF müssen Sie zuerst die UDF-Datei mit der Dienste für Excel-Berechnungen zu registrieren. JavaScript UDF-API stellt Methoden zum Registrieren und Aufheben der Registrierung Ihrer JavaScript UDF bereit.

Wenn die Webseite mit dem Excel Web Access-Webpart oder der eingebetteten Arbeitsmappe gerendert wird, können Sie die JavaScript-UDF in der Arbeitsmappe genau wie jede andere Excel-Arbeitsmappe aufrufen.

Sie möglicherweise beispielsweise eine Funktion, die den aktuellen Aktienkurs für eine bestimmte Aktie abruft. Sie können die Webseite eine UDF JavaScript hinzufügen, die Ihre Excel-Arbeitsmappe (vorausgesetzt, dass Sie über Schreibrechte für die Webseite verfügen) gehostet wird, die JavaScript Code wie folgt verwendet.


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
                       );

Sie können die JavaScript UDF, StockInfo, klicken Sie dann in einer Formel aus einer Zelle innerhalb der Excel Online aufrufen.

Abbildung 1: In Excel Online aufgerufene JavaScript-UDF

In Excel Online aufgerufene benutzerdefinierte JavaScript-Funktionen

Wo kann ich JavaScript UDFs verwenden?

JavaScript-UDFs können entweder in Arbeitsmappen, die in SharePoint Excel Web Access-Webparts angezeigt werden, oder in Arbeitsmappen, die in eine Host-Webseite eingebettet sind, erstellt und verwendet werden. Die Arbeitsmappe muss auf Microsoft OneDrive gespeichert werden. Der Hauptunterschied besteht darin, dass JavaScript-UDFs, die zu Excel Web Access-Webparts hinzugefügt werden, einen SharePoint-Server erfordern. Bei JavaScript-UDFs, die zu Host-Webseiten mit eingebetteten Arbeitsmappen hinzugefügt werden, muss die Arbeitsmappe lediglich auf OneDrive gespeichert werden.

Wichtige Punkte

  • JavaScript-UDFs live nur, solange die Webseite, die, der Sie auf, angezeigt wird. Sie nicht über die Lebensdauer der Webseite hinaus erhalten bleiben, in dem sie erstellt wurden.

  • Sie können keine Excel Services JavaScript-Objektmodell aus in einer JavaScript UDF aufrufen.

Siehe auch