构建一个 机器人,从 Excel 工作表读取数据并将其写入另一个工作表。

先决条件

要使用 Excel 高级版 软件包,必须在运行示例 机器人 的设备上安装 Microsoft Excel。

假设订单处理团队在订单履行过程中以电子表格的形式接收订单数据。 团队自动化了从电子表格创建优先发货列表并与拣货部门共享的过程。 本教程中的示例 机器人 执行以下任务:

  • 使用 Excel 高级版 软件包 读取包含订单列表的电子表格数据。
  • 创建一个新的电子表格,其中包含需要优先发货的订单列表。

在本教程中,您可以从此处下载并使用示例 Excel 文件。

过程

  1. 创建新 机器人
    1. 在左侧窗格中,单击自动化
    2. 单击 创建新的 > 任务机器人
    3. 创建任务机器人窗口中,在名称中输入优先级列表。
    4. 单击创建和编辑
  2. 要读取包含订单列表的电子表格中的数据,请打开 Excel 表格。
    1. 操作面板中,找到并添加Excel 高级 > 打开 操作机器人编辑器
    2. 单击文件并选择您下载的示例 Excel 文件。
    3. 选择工作表包含标题
    4. 选择特定工作表名称,然后输入 order_list
    5. 创建 Excel 会话中,单击本地会话,然后输入 orderlist 作为会话名称。
  3. 为优先订单列表创建一个新的电子表格。
    1. 操作面板中,找到并添加Excel 高级 > 创建工作簿 操作机器人编辑器
    2. 文件路径中,为新文件指定一个文件路径。 例如,C:\\bots\priority-orders.xlsx 。
    3. 工作表名称中,输入优先订单
    4. 创建 Excel 会话中,选择本地会话并输入 prioritylist 作为会话名称。
    5. 保存更改。
  4. 将标题从源电子表格复制到新电子表格。
    1. 操作面板中,找到并添加Excel 高级 > 获取多个单元格 操作机器人编辑器
    2. 选择要返回的单元格范围中,选择特定行,然后在从行到行字段中输入 1
    3. 会话名称中,输入 orderlist
    4. 要将复制的值存储到变量中,请在将值分配给变量中创建并赋值一个名为 HeaderData 的变量。 这些值存储在一个数据表变量中。
    5. 保存更改。
  5. 将复制的标题写入新工作表。
    1. 查找并添加 Excel 高级 > 从数据表写入 操作机器人编辑器
    2. 输入数据表变量中,选择 HeaderData
    3. 单击特定工作表,然后输入优先订单
    4. 指定第一个单元格中,输入 A1
    5. 会话名称中,输入 prioritylist
    6. 保存更改。
  6. 在将数据写入新电子表格之前,请确保在新工作表中选择了 A2 单元格。 为此:
    1. 操作面板中,找到并添加 Excel 高级 > 转到单元格 操作机器人编辑器
    2. 特定单元格中,输入 A2
    3. 会话名称中,输入 prioritylist
    4. 保存更改。
  7. 循环遍历源电子表格中的订单列表。
    1. 操作面板中,找到并添加循环 操作机器人编辑器
    2. 迭代器中,选择 Excel 高级版 中的对工作表中的每一行
    3. 循环遍历中,选择所有行
    4. 会话名称中,输入 orderlist
    5. 将当前值分配给此变量中,选择记录,然后创建一个名为 order-record 的变量。
    6. 保存更改。
  8. 选择“ShippingType”等于“优先级”的记录。
    1. a. 在操作面板中,找到并添加循环 操作 中的 If 操作
    2. 条件中,选择字符串条件。
    3. 源值中,输入 $order_record[4]$ 以选择当前记录的第五列。
    4. 运算符中,选择等于 (=)
    5. 目标值中,输入优先级
    6. 保存更改。
  9. 如果找到匹配的记录,则将记录写入新电子表格。 您可以通过多次使用设置单元格 操作 来实现此目的,次数与源数据中的列数相同。 但是,此示例使用循环 操作 来实现相同的结果。
    1. 操作面板中,找到并添加循环 操作If 操作中。
    2. 迭代器中,选择对于记录中的每个值
    3. 记录变量中,选择 order-record
    4. 将当前值分配给此变量中,选择创建一个名为 RecordValue 的变量。
    5. 保存更改。
    6. 变量面板上,创建一个具有以下详细信息的变量:
      • 名称中,输入 RecordValueCounter
      • 类型中,选择数字
      • 默认值中,输入 0
    7. 操作面板中,找到并添加 Excel 高级 > 设置单元格 操作
    8. 确保已选中活动单元格
    9. 单元格值中,输入 $order-录制[$recordValueCounter$]$
    10. 会话名称中,输入 prioritylist
    11. 要将光标移动到行中的下一个单元格,查找并添加 Excel 高级 > 转到单元格 操作,然后在活动单元格中选择向右一个单元格
    12. 会话名称中,输入 prioritylist
    13. 要增加 recordValueCounter 变量,找到并添加 数字 > 递增 操作。 在输入数字将输出值分配给变量字段中,选择 recordValueCounter。 在输入递增值中,输入 1
    14. 保存更改。
  10. recordValueCounter 变量重置为零。
    1. 在内部循环之后但在 If 操作 内,查找并添加 数字 > 递减 操作
    2. 输入数字将输出值分配给变量字段中,选择 recordValueCounter
    3. 输入递增值中,输入 7
    4. 保存更改。
  11. 在下一次迭代之前,将光标移动到下一行。
    1. 在第一个循环操作中(在递减 操作 之后),查找并添加 Excel 高级 > 转到单元格 操作
    2. 单击活动单元格并选择行首
    3. 会话名称中,输入 prioritylist
    4. 查找并添加 Excel 高级 > 转到单元格 操作
    5. 单击活动单元格并选择向下一个单元格
    6. 会话名称中,输入 prioritylist
    7. 保存更改。
  12. 运行 机器人