You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Power Automate:如何将表单响应转为字段名-字段值的键值对格式?

解决Power Automate表单响应字段ID转实际字段名的问题

操作步骤:

  1. 添加「获取表单详情」操作

    • 在「获取响应详情」步骤之后,添加Microsoft Forms连接器下的「获取表单详情」。
    • 表单ID直接选择触发器关联的表单ID,确保和触发流程的表单一致。
    • 该操作会返回表单的questions数组,每个元素包含字段的随机ID(id)和实际显示名称(title)。
  2. 生成字段ID与名称的映射对象

    • 添加「选择」操作,输入内容选择「获取表单详情」输出中的questions数组。
    • 映射规则设置为:
      • 键:Key,值:item()?['id']
      • 键:Value,值:item()?['title']
    • 添加「Compose」操作,输入以下表达式将选择后的数组转换为ID-名称映射对象:
      json(replace(replace(string(body('Select')), '"Key":', '"'), '"Value":', ''))
      
      执行后会得到类似 {"r92de569b263d4dd2856237db53eae005":"First Name", ...} 的键值对对象。
  3. 转换响应数据为字段名-值的键值对

    • 添加「选择」操作,输入内容选择「获取响应详情」的输出。如果响应包含responseId、submitDate这类系统字段,可先通过「Filter数组」过滤掉,只保留以r开头的字段ID(Microsoft Forms的自定义字段ID均以r开头)。
    • 映射规则设置为:
      • 键:variables('字段映射对象')[item()?['Key']](替换为你实际的Compose操作名称)
      • 值:item()?['Value']
    • 这一步会把所有随机ID替换为对应的实际字段名,得到如{"First Name":"张三", "Email":"zhangsan@example.com"}的格式。
  4. 生成HTML表格并发送邮件

    • 将上一步「选择」操作的输出传入「创建HTML表格」,直接生成带实际字段名的表格。
    • 在「发送邮件」操作中引用这个HTML表格即可。

额外提示:

  • 如果需要保留提交时间、响应ID等系统字段,可在第三步的「选择」操作后手动添加映射,比如键设为「提交时间」,值选择「获取响应详情」里的submitDate。
  • 当表单新增/删除字段时,「获取表单详情」会自动拉取最新字段列表,流程无需手动修改即可适配变更。

内容的提问来源于stack exchange,提问作者RredCat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 04:45:06