如何用Power Automate将SharePoint列表附件重命名为输入标题
核心思路
把你当前公式里的原文件名部分(items('Apply_to_each')?['DisplayName'])替换成列表项的标题字段值,再和时间戳拼接成新文件名即可。
具体操作步骤
- 确认标题字段的内部名称
- 打开SharePoint列表设置,找到标题字段(如果是自定义标题字段,需确认它的内部名称),默认标题字段的内部名称是
Title。
- 打开SharePoint列表设置,找到标题字段(如果是自定义标题字段,需确认它的内部名称),默认标题字段的内部名称是
- 修改「添加附件」的文件名公式
- 替换原公式中的原文件名部分,直接调用列表项的标题字段。示例公式:
说明:concat(formatDateTime(addHours(utcNow(), -8),'MMM-dd'), ' - ', triggerBody()?['Title'])- 如果流程是基于「创建项」触发,用
triggerBody()?['Title']就能直接获取用户输入的标题;如果是通过「获取项」动作获取的列表数据,就用outputs('Get_item')?['body/Title'] - 公式里的
' - '是时间戳和标题之间的分隔符,可根据需求调整或删除
- 如果流程是基于「创建项」触发,用
- 替换原公式中的原文件名部分,直接调用列表项的标题字段。示例公式:
- 保留原文件扩展名(可选)
- 要是需要保留原附件的格式后缀,可加上扩展名提取逻辑,公式示例:
concat(formatDateTime(addHours(utcNow(), -8),'MMM-dd'), ' - ', triggerBody()?['Title'], '.', split(items('Apply_to_each')?['DisplayName'], '.')[last(split(items('Apply_to_each')?['DisplayName'], '.'))])
- 要是需要保留原附件的格式后缀,可加上扩展名提取逻辑,公式示例:
- 测试验证
- 创建新列表项并上传附件,检查附件文件名是否已变成「时间戳+标题」的格式
注意事项
- 确保流程中能正确读取到列表项的标题字段,若在「应用到每一个」循环里操作,要确认循环上下文的列表项数据可用
- 标题里的特殊字符(如/、\、:等)SharePoint会自动处理,无需额外编写过滤逻辑
内容的提问来源于stack exchange,提问作者Lauren Garcia
相关产品推荐
相关产品推荐

