非创建者运行Power Automate调用Excel Script报“脚本未找到”错误求助
Power Automate调用Excel Script跨用户报错解决方案
根因说明
你遇到的Script not found. It may have been unshared or deleted.报错,核心原因不是资源共享权限不足,而是默认配置下Excel Script调用绑定了创建者的个人OneDrive上下文,其他用户运行流程时会默认从自己的个人OneDrive路径查找对应脚本,自然找不到目标资源。
分步解决操作
- 迁移存储位置:将内嵌了Script的Excel模板文件从你的个人OneDrive迁移到项目对应SharePoint站点的公开文档库,禁止将流程依赖的核心资源存储在个人云盘路径,避免跨用户上下文读取异常
- 重构Flow的Excel动作:删除原有「运行脚本」动作,重新添加Excel Online (Business)的「运行脚本」操作,配置路径如下:
- 「位置」选择对应SharePoint站点,不要选择「我的OneDrive」
- 「文档库」选择存放模板的SharePoint文档库
- 「文件」选择迁移到SharePoint的模板文件
- 「脚本」从下拉列表选择文件内嵌的对应脚本,不要手动填写脚本ID
- 调整连接运行权限:如果你的流程不需要严格按发起用户权限管控,将Excel Online (Business)连接的运行上下文设置为使用流所有者的连接运行;如果必须使用发起用户身份运行,需要确保所有使用用户对SharePoint上的模板文件有至少「编辑」权限,仅查看权限无法调用内嵌脚本
- 验证修复效果:先用测试账号直接运行Power Automate流程确认报错消失,再重新发布PowerApp完成全链路验证
避坑提示
- 后续如果修改模板内的Excel Script,需要重新检查Flow中「运行脚本」动作的配置,确认脚本ID匹配,避免脚本更新后ID变更触发同类报错
- 所有Power Platform流程依赖的公共资源都建议存储在SharePoint而非个人OneDrive,避免个人账号权限变动、离职等情况导致业务流程中断
内容的提问来源于stack exchange,提问作者Deborah Resnick
相关产品推荐
相关产品推荐

