activities
latest
false
重要 :
请注意此内容已使用机器翻译进行了部分本地化。 新发布内容的本地化可能需要 1-2 周的时间才能完成。
UiPath logo, featuring letters U and I in white

生产力活动

上次更新日期 2024年12月6日

管理多个 Excel 文件

以下示例说明了如何通过从具有相同结构的多个 Excel 报告文件中提取数据来创建单个 Excel 报告文件。它显示了“ Excel 应用程序作用域”、“删除重复范围”、“保存工作簿”、“关闭工作簿”、“读取范围”和“附加范围”等活动。您可以在UiPath.Excel.Activities包中找到这些活动。

此自动化流程的构建方法如下:

  1. 打开 Studio,并新建一个默认命名为“主要”的“流程”。
  2. 转到“新建”选项卡,然后选择“序列”。

    • 在“名称”字段中写入“MergeReports”。
    • 选择将该流程保存至与“主要”流程相同的位置。
    • 选择“创建”。
    注意:在项目文件夹中添加“ReportTemplate.xlsx”文件并新建“报告”文件夹,然后将以下“.xlsx”文件添加至此文件夹:“Report1”、“Report2”和“Report3”。
  3. 在“工作流设计器”中,选择“合并报告”选项卡。
  4. 将“遍历循环”活动拖动至“工作流设计器”。

    • 在“遍历循环”字段中添加“file”值。
    • 在“属性”面板中,将“类型参数”字段设为“String”,并向“值”字段添加“ReportFiles”。
  5. 将“序列”容器拖动至“遍历循环”活动的主体。

    • 新建“数据表”变量,并将其命名为“ReportTable”。
    • 新建名为“ReportTable”的变量,并将其类型设为“数据表”。
  6. 在“ 序列”中添加“ Excel 应用程序作用域”活动。

    • 在“属性”面板中,向“显示名称”字段添加“Report file”名称,并向“工作簿路径”字段添加“file”值。
    • 选中“只读”和“可见”选项的复选框。这将使该文件仅对无需密码即可访问该文件的任何用户可见和只读。
  7. 拖动 Excel“读取范围”活动,并将其添加至“Excel 应用程序作用域”活动。

    • 在“属性”面板中,向“数据表”字段添加“ReportTable”值。
    • 选中“添加标头”选项的复选框,以将表格第一行识别为标头。
  8. 拖动新的“Excel 应用程序作用域”活动,并将其置于名为“Report file”的“Excel 应用程序作用域”活动下方。
    • 在“属性”面板中,向“显示名称”字段添加“Output report”名称,并向“现有工作簿”字段添加“OutputReport”值。
    • 选中“可视”选项的复选框。这将创建对任何用户可见的文件。
  9. 在“Excel 应用程序作用域”活动主体中添加 Excel“附加范围”活动。

    • 在“属性”面板中,向“数据表”字段添加“ReportTable”变量,并向“工作表名称”字段添加“"Sheet1"”。
  10. 将“分配”活动拖动至名为“Output report”的“Excel 应用程序作用域”活动下方。
    • 在“属性”面板中,向“目标”字段添加“RowsCounter”变量,并向“值”字段添加“RowsCounter + ReportTable.Rows.Count”。
  11. 在“工作流设计器”中,选择“主要”选项卡。
  12. 将“序列”容器拖动至“工作流设计器”。

    • 创建以下变量:

      变量名称

      变量类型

      默认值

      RowsCounter

      Int32

      不适用

      OutputReportName

      字符串

      不适用

      ReportFiles

      字符串数组

      不适用

      OutputReport

      workbook 应用程序

      不适用
  13. 在“序列”的主体中添加“分配”活动。

    • 在“属性”面板中,向“目标”字段添加“OutputReportName”变量,并向“值”字段添加“String.Format("Report-{0:yyyyMMddHHmmss}.xlsx", DateTime.Now)”。这包括文件名中的当前日期和时间。
  14. 添加“复制文件”活动,并将其置于“分配”活动下方。

    • 在“属性”面板中,向“路径”字段添加变量“ReportTemplatePath”,并向“目标”字段添加“OutputReportName”变量。
  15. 将新的“分配”活动拖动至“复制文件”活动下方。

    • 在“目标”字段中添加“ReportFiles”变量,并在“值”字段中添加“Directory.GetFiles(ReportsFolderPath, "*.xlsx")”语法。
  16. 拖动“分配”活动后,请拖动“Excel 应用程序作用域”活动。

    • 在“属性”面板中,向“工作簿路径”字段添加“OutputReportName”变量,向“工作簿”字段添加“OutputReport”,并选中“可见”选项的复选框,使文件对所有用户可见。
  17. 在“Excel 应用程序作用域”活动主体中添加“序列”容器。
  18. 在新创建的“序列”中添加“调用工作流文件”活动。

    • 将“工作流程文件名”的路径设为“"MergeReports.xaml"”。
  19. 拖动“删除重复范围”活动,并将其置于“调用工作流文件”活动下方。

    • 在“属性”面板中,向“范围”字段添加“"A2:F" + (RowsCounter + 1).ToString”,并向“工作表名称”字段添加“"Sheet1"”。
  20. 将“保存 workbook”活动拖动至“删除重复范围”活动下方。
  21. 在“Excel 应用程序作用域”活动下方添加“关闭 workbook”活动。

    • 在“workbook”字段中添加“OutputReport”变量。
  22. 运行自动化流程。完成后,您应该有一个新的.xlsx文件,该文件使用预定义的模板并合并来自多个文件的数据。

此页面有帮助吗?

获取您需要的帮助
了解 RPA - 自动化课程
UiPath Community 论坛
Uipath Logo White
信任与安全
© 2005-2024 UiPath。保留所有权利。