如何在Power Automate推送的Teams自动消息中标记值班成员?
实现Teams消息@值班人员(无需账户ID)的方案
核心思路
利用Teams消息的**@姓名匹配机制**,结合Power Automate的字符串处理,直接通过Excel里的真实姓名生成可触发通知的@标记,无需存储账户ID这类程序化数据,同时保证表格的易维护性。
具体操作步骤
- 规范Excel姓名格式:确保表格里的值班人员姓名,和Teams团队内成员的显示全名完全一致(比如表格写“张三”,Teams成员全名也必须是“张三”,不能有空格、简称差异),直接填日常使用的全名即可,不用额外维护ID类数据。
- 修改Power Automate消息生成逻辑:在提取Excel姓名的步骤后,添加字符串处理操作,把姓名转换成Teams可识别的格式:
- 单个人员:生成
<at>姓名</at>格式文本(例:<at>张三</at>) - 多个人员:用逗号+空格分隔,分别包裹标签(例:
<at>张三</at>, <at>李四</at>)
- 单个人员:生成
- 配置Teams消息发送模式:在Power Automate的「发布消息到Teams频道」动作中,选择消息字段的HTML模式,将带
<at>标签的文本插入消息内容。注意:必须用HTML模式发送,纯文本模式下标签不会生效,无法触发@通知。
- 测试验证:触发流程后,检查Teams消息里的姓名是否变为蓝色可点击的@标记,对应成员是否收到通知提示。若匹配失败,优先核对Excel姓名与Teams成员全名的一致性。
额外优化建议
- 若团队存在重名情况,可在Excel新增「Teams昵称」列,要求成员在Teams设置相同昵称,用昵称生成@标签避免冲突。
- 可在Excel添加「值班日期」「值班岗位」字段,将这些信息整合到Teams消息中,让通知更清晰。
内容的提问来源于stack exchange,提问作者puter
相关产品推荐
相关产品推荐

