Power Automate: 从Excel 选择列,每200条生成一个CSV文件并保存在sharepoint文档库

这本来算是一个很简单的流程,之所以写这篇文章,是因为列出表中的行数限制为256条,若要获取所有行,需要启用分页.

参考微软官方的Excel connector的已知问题于限制

用途:分割的文件可以使用邮件发送给不同的收件人,可以调用API写入到数据库或第三方系统 等.

下面直接创建flow.

1. 添加手动触发器.

2. 添加 List rows present in a table, 重点:启用分页.

分页设置:

3. 添加Select选择需要的列.

perl 复制代码
{
    "type": "Select",
    "inputs": {
      "from": "@outputs('List_rows_present_in_a_table')?['body/value']",
      "select": {
        "OrderNo": "@item()?['OrderNumber']",
        "Line": "@item()?['LineNumber']"
      }
    },
    "runAfter": {
      "List_rows_present_in_a_table": [
        "Succeeded"
      ]
    }
  }

4. 初始化循环变量

  • 初始化变量:名称=startIndex,类型=Integer,值=0
  • 初始化变量:名称=fileCount,类型=Integer,值=1

5. 添加Do until直至处理完所有行.

ini 复制代码
Until= variables('startIndex') >= length(body('Select'))

6. 循环内部:

a. 添加一个Compose

less 复制代码
  take( skip(body('Select'), variables('startIndex')),200)

b.添加 Create CSV table

css 复制代码
  {
    "type": "Table",
    "inputs": {
      "from": "@outputs('Compose')",
      "format": "CSV"
    },
    "runAfter": {
      "Compose": [
        "Succeeded"
      ]
     }
  }

c. 添加 create file.

ini 复制代码
  File Name= concat('output_', string(variables('fileCount')), '.csv')
  File Content = body('Create_CSV_table')

d. 添加: Increment startIndex by 200.

e. 添加: Increment fileCount by 1.

流程中,可以使用chunk函数来操作行数的分割.

对于动态内容的Excel文件,可以添加标记列来标记是否已存在在分割的文件中 (Excel中的每一行需要一个唯一的ID). 当记录被写入CSV文件后,标记为是,或者使用日期和时间生成字符串来标识,这样不用每次都读取所有记录.

流程概览如下:

相关推荐
未来之窗软件服务23 分钟前
万象EXCEL开发(六)excel单元格运算逻辑 ——东方仙盟金丹期
前端·excel·仙盟创梦ide·东方仙盟·万象excel
canonical_entropy12 小时前
一份关于“可逆计算”的认知解码:从技术细节到哲学思辨的完整指南
后端·低代码·deepseek
Insight-n16 小时前
低代码数字化时代的开发新范式
低代码·ai
Java水解20 小时前
深入掌握 ExcelJS:Node.js 中强大的 Excel 操作库
后端·excel
MATLAB代码顾问21 小时前
Python实现星雀优化算法(Nutcracker Optimizer Algorithm, NOA) (附完整代码)
大数据·python·excel
偷心伊普西隆21 小时前
Python Excel 比较 sheet 之间的差异
python·excel
nyf_unknown1 天前
(vue)前端下载本地excel文件
前端·vue.js·excel
脑花儿1 天前
ABAP EXCEL模板数据上传 及 注意事项
开发语言·excel
一叶飘零_sweeeet1 天前
攻克 大 Excel 上传难题:从异步处理到并发去重的全链路解决方案
java·excel·大文件上传
咖啡星人k1 天前
MonkeyCode+Excel混合双打:3步把表格变成可视化大屏
人工智能·excel