Power Automate发送带Excel附件的Outlook邮件时附件损坏问题求助
核心问题定位
你遇到的是通过Power Automate批量发送Outlook邮件时,附件Excel文件损坏无法打开的问题,结合你使用的Get files (properties only)和Get file content using path操作,可从以下方向逐一排查:
排查步骤
验证文件路径准确性
确认Get file content using path中的路径是否指向完整有效的Excel文件,需包含正确的文件名和扩展名(如.xlsx/.xls)。如果是动态拼接的路径,检查变量或表达式是否存在拼接错误,避免指向文件夹或无效地址。检查文件内容的编码设置
Excel属于二进制文件,Get file content using path需保持默认的无编码设置,绝不能强制选择UTF-8等文本编码——错误的编码转换会直接破坏文件的二进制结构,导致附件损坏。核对附件配置的绑定关系
在Outlook发送邮件的操作中,附件的Content字段必须绑定Get file content using path返回的File Content二进制数据,Name字段需绑定正确的文件名(带扩展名)。若错误绑定了文件属性文本(如ID或Path)而非二进制内容,附件会因数据无效而损坏。排除源文件本身问题
直接打开共享位置(如OneDrive/SharePoint)的源Excel文件,确认文件本身可正常打开,排除源文件损坏、多人编辑锁定或同步未完成的情况,确保获取内容时文件处于稳定状态。简化流程做单条测试
暂时移除Get files (properties only),用Get file content using path指定固定路径测试单条邮件发送。如果单条发送的附件正常,再排查批量循环中动态变量的迭代逻辑是否存在错误。
补充优化建议
若以上排查无问题,可尝试将Get file content using path替换为Get file content(通过文件ID获取内容),规避路径解析可能带来的异常;同时查看Power Automate运行历史,对比Get file content using path返回的内容大小与源文件是否一致,判断是否存在内容截断情况。
内容的提问来源于stack exchange,提问作者Ily C

