Skip to content

Commit 8e69aa0

Browse files
authored
[Excel] (custom functions) unified manifest support for xll preference (#5226)
1 parent 5996b7c commit 8e69aa0

File tree

1 file changed

+29
-1
lines changed

1 file changed

+29
-1
lines changed

docs/excel/make-custom-functions-compatible-with-xll-udf.md

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,33 @@ To enable compatibility with an existing XLL add-in, identify the equivalent XLL
2020

2121
To set the equivalent XLL add-in for your custom functions, specify the `FileName` of the XLL file. When the user opens a workbook with functions from the XLL file, Excel converts the functions to compatible functions. The workbook then uses the XLL file when opened in Excel on Windows, but it continues to use custom functions from your Excel JavaScript API add-in when opened on the web or on Mac.
2222

23-
The following example shows how to specify both a COM add-in and an XLL add-in as equivalents in an Excel JavaScript API add-in manifest file. Often you specify both. For completeness, this example shows both equivalents in context. They're identified by their `ProgId` and `FileName` respectively. The `EquivalentAddins` element must be positioned immediately before the closing `VersionOverrides` tag. For more information on COM add-in compatibility, see [Make your Office Add-in compatible with an existing COM add-in](../develop/make-office-add-in-compatible-with-existing-com-add-in.md).
23+
The manifest configuration depends on what type of manifest the add-in uses.
24+
25+
# [Unified manifest for Microsoft 365](#tab/jsonmanifest)
26+
27+
The following example shows how to specify both a COM add-in and an XLL add-in as equivalents in a unified manifest. Often you specify both. For completeness, this example shows both equivalents in context. They're identified by their [`"alternates.prefer.comAddin.progId"`](/microsoft-365/extensibility/schema/extension-alternate-versions-array-prefer-com-addin#progid) and [`"alternates.prefer.xllCustomFunctions.filename"`](/microsoft-365/extensibility/schema/extension-alternate-versions-array-prefer-xll-custom-functions#filename) respectively. For more information on COM add-in compatibility, see [Make your Office Add-in compatible with an existing COM add-in](../develop/make-office-add-in-compatible-with-existing-com-add-in.md).
28+
29+
```json
30+
"extensions" [
31+
...
32+
"alternates" [
33+
{
34+
"prefer": {
35+
"comAddin": {
36+
"progId": "ContosoCOMAddin"
37+
},
38+
"xllCustomFunctions": {
39+
"fileName": "contosofunctions.xll"
40+
}
41+
}
42+
}
43+
]
44+
]
45+
```
46+
47+
# [Add-in only manifest](#tab/xmlmanifest)
48+
49+
The following example shows how to specify both a COM add-in and an XLL add-in as equivalents in an Excel JavaScript API add-in only manifest file. Often you specify both. For completeness, this example shows both equivalents in context. They're identified by their `ProgId` and `FileName` respectively. The `EquivalentAddins` element must be positioned immediately before the closing `VersionOverrides` tag. For more information on COM add-in compatibility, see [Make your Office Add-in compatible with an existing COM add-in](../develop/make-office-add-in-compatible-with-existing-com-add-in.md).
2450

2551
```xml
2652
<VersionOverrides>
@@ -39,6 +65,8 @@ The following example shows how to specify both a COM add-in and an XLL add-in a
3965
</VersionOverrides>
4066
```
4167

68+
---
69+
4270
> [!NOTE]
4371
> If an Excel JavaScript API add-in declares its custom functions to be compatible with an XLL add-in, changing the manifest at a later time could break a user's workbook because it will change the file format.
4472

0 commit comments

Comments
 (0)