如何为Yeoman生成的Node.js版Excel Add-in创建安装程序?
为Excel自定义公式插件创建离线安装包(VS Code环境)
一、先完成生产构建
先把Yeoman生成的项目打包成可部署的生产版本:
- 打开VS Code终端,执行
npm run build,生成dist目录(具体名称依Yeoman模板配置而定),里面是压缩后的插件代码。 - 编辑
manifest.xml(或manifest.json):将SourceLocation修改为后续要部署的公网地址(比如GitHub Pages、个人网站路径);如果是本地离线使用,也可设为本地文件路径,例如file:///C:/YourAddin/dist/index.html。
二、两种实用的安装包制作方案
方案1:用Office部署工具(ODT)制作批量/静默安装包
ODT是微软官方工具,适合企业批量部署,也支持单个用户安装:
- 下载Office部署工具并解压到本地文件夹。
- 创建
configuration.xml配置文件,示例内容如下:
<Configuration> <Add OfficeClientEdition="64" Channel="Current"> <!-- 可排除不需要的Office组件以减小体积 --> <Product ID="O365ProPlusRetail"> <Language ID="zh-cn" /> <ExcludeApp ID="Access" /> <ExcludeApp ID="Groove" /> <ExcludeApp ID="OneNote" /> </Product> <!-- 配置你的插件信息 --> <Product ID="ExcelAddin"> <AddIn ID="你的插件ID(从manifest文件中获取)" SourcePath=".\manifest.xml" /> </Product> </Add> <Display Level="None" AcceptEULA="TRUE" /> </Configuration>
- 将你的
manifest.xml和dist目录放到ODT解压后的文件夹中,然后在终端运行:
setup.exe /configure configuration.xml
- 把整个ODT文件夹打包成ZIP,上传到GitHub或个人网站,用户下载后运行
setup.exe即可完成静默安装。
方案2:编写PowerShell一键安装脚本(适合个人用户)
如果不需要批量部署,写个简单脚本就能帮用户快速侧载插件:
- 先把
manifest.xml和dist目录上传到公网空间(比如GitHub Pages),确保manifest.xml中的SourceLocation指向正确的公网URL。 - 创建
Install-ExcelAddin.ps1脚本,内容如下:
# 替换为你的manifest文件公网地址 $manifestUrl = "https://your-domain.com/manifest.xml" $tempDir = "$env:TEMP\ExcelCustomFormulaAddin" # 创建临时目录并下载manifest New-Item -ItemType Directory -Path $tempDir -Force | Out-Null Invoke-WebRequest -Uri $manifestUrl -OutFile "$tempDir\manifest.xml" -UseBasicParsing # 注册插件到Excel注册表 $addinRegistryPath = "HKCU:\Software\Microsoft\Office\16.0\Excel\Addins\你的插件ID" New-Item -Path $addinRegistryPath -Force | Out-Null Set-ItemProperty -Path $addinRegistryPath -Name "Manifest" -Value "$tempDir\manifest.xml" Set-ItemProperty -Path $addinRegistryPath -Name "LoadBehavior" -Value 3 Write-Host "插件安装完成!请重启Excel后使用自定义公式。"
- 把脚本和简单说明文档打包成ZIP,上传到GitHub或个人网站,用户下载后右键选择「用PowerShell运行」即可完成安装。
三、关键注意事项
- 确保
manifest.xml中的Permissions设置为ReadWriteDocument,自定义公式需要该权限才能正常工作。 - 如果是本地离线部署,要让用户把
dist目录放到你指定的路径(比如C:\ExcelAddin),并同步修改manifest.xml里的SourceLocation。 - 务必在干净的Excel环境(比如虚拟机)测试安装包,确保插件能正常加载、自定义公式可调用。
内容的提问来源于stack exchange,提问作者slon474
相关产品推荐
相关产品推荐

