Power Automate 桌面流:RPA 自动化任务

FreeGuideOnline 最新 2026-06-18

Power Automate 桌面流完全指南:用 RPA 解放双手

Power Automate 桌面流(前身为 Microsoft Power Automate Desktop)是微软提供的机器人流程自动化(RPA) 工具,免费包含在 Windows 10/11 中。它允许你通过图形化设计器录制或构建桌面自动化,无需编写代码,即可自动执行重复性的 Windows 和 Web 任务。

本教程面向零基础用户,从安装配置到构建实用自动化流,一步步带你掌握桌面流的核心能力。


1. 什么是 Power Automate 桌面流

桌面流是 Power Automate 平台中的本地 RPA 解决方案。它可以模拟人类与计算机的交互,例如:

  • 打开应用程序、点击按钮、输入文本
  • 从 Excel、PDF、网页中提取数据
  • 批量处理文件与文件夹
  • 自动收发邮件
  • 与遗留系统(无 API)交互

核心价值:将人工从重复、枯燥的桌面操作中释放出来,减少错误,提升效率。

桌面流与云端流(Power Automate Cloud Flows)可结合使用,形成有人值守或无人值守的自动化。您无需任何编程基础,通过拖放操作即可构建自动化。


2. 环境准备与安装

2.1 检查系统要求

  • 操作系统:Windows 10(版本 1809 或更高)、Windows 11
  • 硬件:建议至少 4 GB RAM,2 GB 可用磁盘空间
  • 权限:本地管理员权限(用于安装)
  • 浏览器:若涉及 Web 自动化,需安装对应浏览器扩展(如 Microsoft Edge 或 Chrome)

2.2 安装 Power Automate 桌面应用

方法一:直接下载安装(推荐)

  1. 访问 Power Automate 官网下载页面
  2. 点击“Power Automate 桌面版”的下载按钮,运行 Setup.Microsoft.PowerAutomate.exe
  3. 按向导完成安装,期间会提示安装浏览器扩展(Edge/Chrome),请勾选安装

方法二:通过 Microsoft Store(Windows 11 用户)

  • 打开 Microsoft Store,搜索“Power Automate”,获取并安装

安装完成后,启动应用。首次运行需要使用工作或学校账户个人 Microsoft 账户登录。桌面流编辑器属于免费功能,无需订阅高级许可证即可创建、运行桌面流(仅限有人值守模式)。


3. 界面导览与核心组件

打开 Power Automate,主界面分为三块:

  • 左侧导航:主页、我的流、共享、监视、示例
  • 中间流设计器:拖放构建流的画布
  • 右侧操作窗格:包含数百个预置操作(Actions)

3.1 流设计器画布

每个桌面流按子流(Subflow)组织,至少包含一个 Main 子流。你可以将操作从右侧拖入,按顺序执行。顶部工具栏提供另存为、运行、调试等功能。

3.2 操作分类(重要)

操作按功能分组,常用类别如下:

  • 变量:创建、设置变量值
  • 条件:If/Else、Switch
  • 循环:For each、While、Loop
  • 文件:复制、移动、删除文件/文件夹
  • Excel:启动 Excel、读取/写入单元格、运行宏
  • UI 自动化:点击界面元素、发送键击、获取文本
  • 浏览器自动化:启动浏览器、导航至 URL、提取页面数据
  • 系统:运行应用程序、进程管理、剪贴板操作
  • 邮件:通过 Outlook 发送/接收邮件
  • 加密:哈希、加密/解密

每个操作都配有可配置的参数窗口,无需记忆语法。


4. 构建第一个桌面流:自动重命名并归档下载文件

目标:监控“下载”文件夹,将所有 .pdf 文件移动到指定归档目录,并按日期前缀重命名。

4.1 创建新流

  1. 点击“新建流”,输入名称“每日 PDF 归档”
  2. 点击“创建”,进入设计器

4.2 获取下载文件夹中的 PDF 文件

  • 从操作窗格拖入 “文件夹” > “获取文件夹中的文件”
    • 文件夹路径:C:\Users\%USERNAME%\Downloads (或使用 %USERPROFILE%\Downloads
    • 文件筛选器:*.pdf
    • 点击保存。输出变量名为 Files,是一个文件列表。

4.3 遍历文件

  • 添加 “循环” > “For each”
    • 要迭代的值:%Files%
    • 在循环内添加后续操作

4.4 生成新文件名

为了按日期重命名,需要动态获取当前日期。

  • 在循环内,添加 “日期时间” > “获取当前日期和时间”
    • 格式选择自定义:yyyy-MM-dd
    • 输出变量:CurrentDate
  • 添加 “变量” > “设置变量”(若需要拼接字符串)
    • 选择“创建新变量”,名称为 NewName
    • 值:%CurrentDate%_%CurrentItem.Name%
    • 或者直接在重命名操作中使用表达式

4.5 移动并重命名文件

  • 添加 “文件” > “移动文件”
    • 要移动的文件:%CurrentItem%
    • 目标文件夹:C:\ArchivedPDFs(提前创建好)
    • 如果文件已存在:选择“重命名”或“覆盖”(根据需求)
    • 高级中可勾选“更改名称”,输入新名称,如:%CurrentDate%_%CurrentItem.Name%

4.6 添加错误处理(可选)

为移动文件操作添加异常处理:

  • 右键点击“移动文件”操作 → 选中“错误时”配置
  • 添加 “变量” > “设置变量” 记录出错文件路径到列表,或写入日志文件

4.7 运行与测试

点击工具栏的“运行”按钮,观察执行过程。若出错,调试工具会高亮失败步骤,双击可查看错误详情。

最终流的结构示意:

Main
└── 获取文件夹中的文件 (筛选 *.pdf)
    └── For each %Files%
        ├── 获取当前日期和时间 → %CurrentDate%
        ├── 设置变量 %NewName% = %CurrentDate%_%CurrentItem.Name%
        └── 移动文件 %CurrentItem% → C:\ArchivedPDFs (新名称 %NewName%)

5. UI 自动化实战:批量处理记事本数据

桌面流最强大的能力在于操作任意 Windows 应用程序。我们以记事本为例,演示如何自动打开、写入、保存。

5.1 录制 UI 操作

对于初学者,推荐使用桌面录制器

  1. 在设计器顶部点击“录制器”图标
  2. 桌面录制器窗口出现后,开始操作:
    • 按 Win 键,输入“notepad”,回车打开记事本
    • 在记事本中键入 Hello, this is automated.
    • 点击“文件” > “保存”,选择路径,输入文件名,保存
  3. 完成操作后,停止录制,操作自动转换为流步骤
  4. 生成的步骤通常包含:
    • “运行应用程序”:notepad.exe
    • “单击窗口中的 UI 元素”:定位文本区域
    • “填充窗口中的文本字段”:发送字符串
    • “单击窗口中的 UI 元素”:菜单、保存按钮等

录制器是快速上手的捷径,但生成的“UI 元素”选择器可能不够健壮,后续需优化。

5.2 手动构建可靠的 UI 自动化

手动添加 UI 操作更可控。

  • 启动应用程序:拖入“系统” > “运行应用程序”
    • 应用程序路径:notepad
  • 定位窗口:添加“UI 自动化” > “获取窗口”
    • 窗口选择器:点击“添加 UI 元素”,按住 Ctrl 键点击记事本窗口,自动捕获
  • 设置焦点:添加“单击窗口中的 UI 元素”,选择记事本编辑区
  • 发送文本:“填充窗口中的文本字段”或“发送键击”
    • 要发送的文本:This line was typed by RPA.
  • 保存文件:同理点击菜单“文件” > “保存”,在“另存为”对话框中填写路径和文件名

关键技巧

  • UI 选择器:使用“窗口标题”和“类名”保持稳定性,避免依赖坐标
  • 动态等待:在 UI 操作后添加“等待”条件,确保界面就绪

6. 使用变量与数据类型

桌面流支持多种数据类型,无需显式声明,但赋值时需注意。

6.1 创建变量

  • 操作“设置变量”可新建并赋值
  • 变量名区分大小写,引用时用百分号包裹:%VarName%

6.2 常用数据类型

类型 说明 示例
文本 (Text) 字符串 "Hello"
数值 (Number) 整数或小数 1233.14
布尔 (Boolean) True / False 常用于条件
列表 (List) 有序集合 [1, 2, 3]
数据表 (DataTable) 类似表格 多用于 Excel
日期/时间 (DateTime) 时间类型 2025-03-15 09:30

6.3 表达式与转换

在参数输入框中点击 {x} 图标可打开表达式编辑器,支持算术运算、字符串拼接、日期格式化等。

例如:

  • 拼接:%'Name: ' + UserName%
  • 取文件扩展名:%Path.GetExtension(FilePath)%
  • 日期比较:%DateTime.Compare(Date1, Date2)%

7. 条件逻辑与循环

7.1 If/Else 条件

  • 拖入“条件” > “If”
  • 第一个操作数:%Counter%,运算符:大于,第二个操作数:10
  • 在“If”下方拖动操作,在“Else”下方放置备用操作

7.2 Switch 多路分支

当需要根据变量不同值执行不同分支时,使用 Switch:

  • 值:%Status%
  • 添加多个 Case:如 "Approved""Rejected"
  • 可设默认分支

7.3 循环结构

  • For each:遍历列表、数据行、文件集合
  • Loop:重复执行指定次数
  • While:当条件为真时循环,需注意避免死循环
  • 退出循环:可提前中断

8. 错误处理与调试

8.1 默认行为

默认情况下,一个操作失败将导致整个流立即终止并返回错误。

8.2 每步异常处理

  • 点击某操作的三个点 > “配置运行时选项”
  • 启用“错误时”区域,添加补救操作(如重试、写日志、继续下一项)

8.3 全局异常处理

通过在 Main 流顶部添加“On block error”操作(需“系统”类别),可捕获整个子流的错误:

  • 拖入“系统” > “出错时”
  • 在其中包含备用逻辑:例如发送错误邮件、通知用户

8.4 调试工具

  • 设置断点:右键操作编号,选择“切换断点”,运行时会暂停
  • 单步执行:工具栏的“运行下一个操作”或“跳过”
  • 变量监视:左侧变量面板实时显示值变化
  • 运行历史:每次运行记录均可查看,高亮失败项

9. 输入输出与触发方式

桌面流本身不能直接由事件触发(除非与云流配合),但可在设计时定义输入变量,在手动运行时弹出对话框输入值。

9.1 定义输入变量

  • 在流属性(右侧“输入/输出变量”标签)中点击“+”添加输入变量
  • 设置名称、类型、默认值、描述
  • 在操作中使用时直接 %变量名%

运行时,会先弹出表单让用户填写。

9.2 与云流集成(无人值守执行)

若需计划触发(例如每日 9 点运行),需通过云流调用桌面流:

  1. 在 Power Automate 门户(Web)创建“计划云端流”
  2. 添加操作“运行使用 Power Automate Desktop 构建的流”
  3. 选择“无人值守”模式(需付费许可证)
  4. 配置网关(计算机需开机且登录)

但本教程面向免费功能,手动运行或有人值守已足够满足个人自动化需求。


10. 常用的实用示例片段

10.1 从网页提取表格数据到 Excel

  1. 启动浏览器:打开 Chrome,导航到目标 URL
  2. 提取网页上的数据:使用“浏览器自动化” > “提取网页上的数据”
    • 选择“显示表格”,捕获表格 UI 元素
    • 输出为 DataTable 变量
  3. 写入 Excel:启动 Excel → 打开工作簿 → “写入数据表到 Excel 工作表”

10.2 批量发送带附件的邮件

  1. 获取“待发送”文件夹中所有文件列表
  2. 读取一个 Excel 文件获取收件人邮箱和主题
  3. 循环每一行:
    • 条件判断文件是否存在
    • 使用“Outlook” > “发送邮件”,附加对应文件

10.3 剪贴板操作自动化

  • “获取剪贴板文本” → 处理(如正则清洗) → “设置剪贴板文本”
  • 常用于从系统间无法直接交互的应用中取数据

11. 最佳实践与注意事项

  1. 选择器策略:优先使用属性(Name、AutomationId),避免绝对坐标;测试时调整窗口大小/分辨率以验证健壮性。
  2. 等待时机:UI 操作后添加“等待窗口内容”或“等待元素出现”,防止因系统延迟导致失败。
  3. 异常处理不可少:任何文件操作、网络请求都要包装异常处理。
  4. 安全存储凭据:使用 Power Automate 的加密凭据功能,切勿硬编码密码。
  5. 模块化设计:将常用功能封装为子流,在多个流中调用,便于维护。
  6. 版本控制:定期复制流或使用“另存为”备份,避免误改丢失。
  7. 遵守合规要求:自动化涉及个人数据时,确保符合组织隐私政策。

12. 学习资源与下一步

  • 官方文档Microsoft Power Automate Desktop 文档
  • 示例流:应用内置“示例”专区,可导入学习
  • 社区论坛:Power Automate Community 提供大量问答
  • 深入方向
    • 学习云流结合,实现端到端自动化(审批、通知等)
    • 掌握 AI Builder 集成,从文档中提取结构化信息
    • 学习管理无人值守机器人池

现在,你能从“每日 PDF 归档”开始,逐步解放更多重复劳动。桌面流的学习曲线平缓,但生产力回报巨大。开始构建你的第一个自动化吧!