Erweitern von benutzerdefinierten Funktionen mit XLL-Add-Ins
Hinweis
Ein XLL-Add-In ist eine Excel-Add-In-Datei mit der Dateierweiterung .xll. Eine XLL-Datei ist ein Typ von DLL-Datei (Dynamic Link Library), die nur von Excel geöffnet werden kann. XLL-Add-In-Dateien müssen in C oder C++ geschrieben werden. Weitere Informationen finden Sie unter Entwickeln von Excel-XLLs .
Wenn Sie über vorhandene Excel XLL-Add-Ins verfügen, können Sie entsprechende benutzerdefinierte Funktions-Add-Ins mithilfe der Excel-JavaScript-API erstellen, um Ihre Lösungsfeatures auf andere Plattformen wie Excel im Web oder auf einem Mac zu erweitern. Excel-JavaScript-API-Add-Ins verfügen jedoch nicht über alle Funktionen, die in XLL-Add-Ins verfügbar sind. Abhängig von der Funktionalität, die Ihre Lösung verwendet, bietet das XLL-Add-In möglicherweise eine bessere Erfahrung in Excel unter Windows als das Excel-JavaScript-API-Add-In.
Wichtig
Das entsprechende Add-In-Feature wird von der folgenden Plattform und den folgenden Anwendungen unterstützt. COM-Add-Ins können auf keiner anderen Plattform installiert werden. Daher wird auf diesen Plattformen das Manifestelement ignoriert, EquivalentAddins
das weiter unten in diesem Artikel erläutert wird.
- Excel, Word und PowerPoint unter Windows (Version 1904 oder höher)
- Klassisches Outlook unter Windows (Version 2102 oder höher) für eine unterstützte Exchange-Serverversion
Angeben einer entsprechenden XLL im Manifest
Um die Kompatibilität mit einem vorhandenen XLL-Add-In zu ermöglichen, identifizieren Sie das entsprechende XLL-Add-In im Manifest Ihres Excel-JavaScript-API-Add-Ins. Excel verwendet dann die XLL-Add-In-Funktionen, wenn sie unter Windows ausgeführt werden, anstelle der benutzerdefinierten Funktionen Ihres Excel-JavaScript-API-Add-Ins.
Um das entsprechende XLL-Add-In für Ihre benutzerdefinierten Funktionen festzulegen, geben Sie die FileName
der XLL-Datei an. Wenn der Benutzer eine Arbeitsmappe mit Funktionen aus der XLL-Datei öffnet, konvertiert Excel die Funktionen in kompatible Funktionen. Die Arbeitsmappe verwendet dann die XLL-Datei, wenn sie in Excel unter Windows geöffnet wird, aber sie verwendet weiterhin benutzerdefinierte Funktionen aus Ihrem Excel JavaScript-API-Add-In, wenn sie im Web oder auf Mac geöffnet wird.
Das folgende Beispiel zeigt, wie Sie sowohl ein COM-Add-In als auch ein XLL-Add-In als Entsprechungen in einer Excel-JavaScript-API-Add-In-Manifestdatei angeben. Häufig geben Sie beides an. Aus Gründen der Vollständigkeit zeigt dieses Beispiel beide Entsprechungen im Kontext an. Sie werden durch ihre ProgId
bzw FileName
. identifiziert. Das EquivalentAddins
Element muss unmittelbar vor dem schließenden VersionOverrides
Tag positioniert werden. Weitere Informationen zur Com-Add-In-Kompatibilität finden Sie unter Machen Sie Ihr Office-Add-In mit einem vorhandenen COM-Add-In kompatibel.
<VersionOverrides>
...
<EquivalentAddins>
<EquivalentAddin>
<ProgId>ContosoCOMAddin</ProgId>
<Type>COM</Type>
</EquivalentAddin>
<EquivalentAddin>
<FileName>contosofunctions.xll</FileName>
<Type>XLL</Type>
</EquivalentAddin>
</EquivalentAddins>
</VersionOverrides>
Hinweis
Wenn ein Excel-JavaScript-API-Add-In seine benutzerdefinierten Funktionen als kompatibel mit einem XLL-Add-In deklariert, kann das Ändern des Manifests zu einem späteren Zeitpunkt die Arbeitsmappe eines Benutzers beeinträchtigen, da es das Dateiformat ändert.
Verhalten von benutzerdefinierten Funktionen für XLL-kompatible Funktionen
Die XLL-Funktionen eines Add-Ins werden in XLL-kompatible benutzerdefinierte Funktionen konvertiert, wenn ein Arbeitsblatt geöffnet wird und ein entsprechendes Add-In verfügbar ist. Beim nächsten Speichern werden die XLL-Funktionen in einem kompatiblen Modus in die Datei geschrieben, sodass sie sowohl mit dem XLL-Add-In als auch mit benutzerdefinierten Funktionen des Excel-JavaScript-API-Add-Ins (wenn sie auf plattformen funktionieren, die von XLL nicht unterstützt werden).
In der folgenden Tabelle werden Features zwischen benutzerdefinierten XLL-Funktionen, XLL-kompatiblen benutzerdefinierten Funktionen und benutzerdefinierten Excel-JavaScript-API-Add-In-Funktionen verglichen.
Benutzerdefinierte XLL-Funktion | XLL-kompatible benutzerdefinierte Funktionen | Benutzerdefinierte Funktion des Excel-JavaScript-API-Add-Ins | |
---|---|---|---|
Unterstützte Plattformen | Windows | Windows, macOS, Webbrowser | Windows, macOS, Webbrowser |
Unterstützte Dateiformate | XLSX, XLSB, XLSM, XLS | XLSX, XLSB, XLSM | XLSX, XLSB, XLSM |
AutoVervollständigen von Formeln | Nein | Ja | Ja |
Streaming | Möglich über xlfRTD und XLL-Rückruf. | Ja | Ja |
Lokalisierung von Funktionen | Nein | Nein Name und ID müssen mit den vorhandenen XLL-Funktionen übereinstimmen. | Ja |
Veränderliche Funktionen | Ja | Ja | Ja |
Multithread-Neuberechnungsunterstützung | Ja | Ja | Ja |
Berechnungsverhalten | Keine Benutzeroberfläche. Excel reagiert während der Berechnung möglicherweise nicht. | Benutzer sehen #BUSY! bis ein Ergebnis zurückgegeben wird. | Benutzer sehen #BUSY! bis ein Ergebnis zurückgegeben wird. |
Anforderungssätze | Nicht zutreffend | CustomFunctions 1.1 und höher | CustomFunctions 1.1 und höher |
Siehe auch
Office Add-ins