如何在Power Automate中编辑SharePoint文件夹内的CSV文件?请指导连接器及步骤
所需连接器/内置操作
- SharePoint:核心连接器,负责对接SharePoint站点、文件夹与文件
- Compose(内置操作):用于CSV内容的格式转换与处理
- 应用到每一个(内置操作):遍历文件夹中的所有CSV文件
具体操作步骤
1. 创建流并设置触发器
- 选择触发方式:测试阶段用手动触发流;自动处理选当文件创建或修改时,关联目标SharePoint站点与CSV存储文件夹
2. 获取目标文件夹内的CSV文件
- 添加SharePoint的获取文件夹中的文件操作,配置:
- 站点地址:填入目标SharePoint站点的完整URL
- 文件夹路径:选择存储CSV的目标文件夹
- 可选筛选:在「筛选查询」中输入
File_x0020_Type eq 'csv',仅获取CSV格式文件
3. 遍历所有CSV文件
- 添加应用到每一个操作,将上一步返回的「值」(文件列表)作为循环输入,确保逐个处理每个文件
4. 读取CSV文件内容
- 在循环内部,添加SharePoint的获取文件内容操作,配置:
- 站点地址:同之前的目标站点
- 文件标识符:选择当前循环项的「文件标识符」字段
5. 转换CSV为可编辑的数组
- 添加Compose操作,用表达式拆分CSV内容为行数组:
split(body('获取文件内容'), decodeUriComponent('%0A'))- 若需拆分每行的列,再添加一个Compose操作,用逗号拆分单行内容:
(注:如果CSV包含带引号的字段,需用更复杂的正则处理,简单场景用逗号即可)split(item(), ',')
- 若需拆分每行的列,再添加一个Compose操作,用逗号拆分单行内容:
6. 编辑CSV内容
- 根据需求添加编辑逻辑:
- 用选择操作修改指定列的值
- 用追加到数组变量添加新行
- 用设置变量修改数组中的特定元素
示例:给每行末尾添加「编辑标记」列,可在选择操作中映射原列后,新增字段并赋值'已编辑'
7. 将编辑后的数组转回CSV格式
- 添加Compose操作,用表达式将数组拼接回CSV字符串:
(若拆分过列,需先将每行的列用逗号拼接,再拼接所有行)join(variables('编辑后的数组'), decodeUriComponent('%0A'))
8. 保存编辑后的文件
- 选择SharePoint的更新文件操作(覆盖原文件),或创建文件操作(生成新文件):
- 站点地址:目标站点
- 文件路径:原文件夹路径(或指定新路径)
- 文件内容:填入上一步Compose输出的CSV字符串
- 若更新原文件,需选择原文件的「文件标识符」
9. 测试流
- 手动触发流(或等待自动触发),检查SharePoint文件夹中的CSV文件是否符合编辑预期
内容的提问来源于stack exchange,提问作者Willy Kelly
相关产品推荐
相关产品推荐

