StudioX
2020.10
False
横幅背景图像
不在支持范围内
StudioX 用户指南
上次更新日期 2023年12月20日

教程:比较 Excel 文件和电子邮件对帐错误

在本教程中,我们将创建一个自动化项目,将包含发票的电子表格中的金额与包含每个供应商摘要的 CSV 文件中的金额进行比较。如果文件之间存在任何对帐错误,我们将创建一个包含详细信息的 CSV 文件,然后通过电子邮件发送该文件。

我们将创建一个包含以下活动的项目:

  1. 两个“使用 Excel 文件”活动以指定包含发票的 Excel 文件以及我们要在其中校正数据的文件。
  2. 一系列“写入单元格”活动,用于将两个列标题添加到对帐 Excel 文件中,并计算一个供应商的发票总和以及该总和与初始摘要中金额之间的差额。 我们将添加一个“复制范围” 活动,将我们为一个供应商添加的公式复制到工作表中的所有行中,以便对所有供应商执行相同的计算,然后再添加一个“写入单元格” 活动,以将总差额添加到一个单元格。
  3. 一个“ IF条件” 活动,我们将在其中添加一个条件,即如果存在对帐错误(差额总和大于 0),则应创建包含详细信息的 CSV 文件并将其通过电子邮件发送到指定的地址。 对于电子邮件任务,我们将在“If”活动中添加一个“使用桌面 Outlook App ” 活动,以指明我们要从中发送邮件的 Outlook 帐户,并在“使用桌面 Outlook App”中添加“发送电子邮件” 活动。
  1. 第 1 步:设置项目并获取必要的文件。
    1. 使用默认设置创建一个新的空白项目
    2. 使用此页面底部的按钮,通过本教程中的自动化项目下载并提取存档。将文件夹“data”复制到项目文件夹。
  2. 第 2 步:将 Excel 文件添加到项目中。
    1. 单击“添加活动”docs image然后在屏幕顶部的搜索框中找到“使用 Excel 文件” 活动并将其选中。 “使用 Excel 文件”活动随即添加到“设计器”面板中。
    2. 在活动中:
      • 单击“浏览”docs image然后浏览并选择“ Excel 文件invoices.xlsx
      • 在“引用为”字段中,输入 Invoices

        您已指明将使用自动化中称为“Invoices”的文件 invoices.xlsx。

    3. 单击“使用 Excel 文件”活动中的“添加活动”docs image,然后添加另一个“使用 Excel 文件”活动。
    4. 在第二个活动中:
      • 单击“浏览”docs image然后浏览并选择“ Excel 文件reconcile.xlsx
      • 在“引用为”字段中,输入 Rec

        您已指明将使用自动化中称为 Rec 的文件 reconcile.xlsx。



  3. 第 3 步:将数据复制到对帐文件中。
    1. 单击“添加活动”docs image然后在屏幕顶部的搜索框中找到 “读取 CSV ”活动并将其选中。 该活动随即添加到“使用 Excel 文件”活动中。
    2. 读取 CSV 活动中:
      • 单击“浏览”docs image ,然后浏览并选择文件summary.csv
      • 单击“输出到”字段右侧的加号 ,然后选择“Rec”>“Summary [工作表]”。此字段会更新为您选择的“[Rec] 发票”。

        您已指明要将数据从 CSV 文件 summary.csv 复制到摘要工作表中的记录文件。

    3. 单击“添加活动”docs image然后在屏幕顶部的搜索框中找到 “复制范围” 活动并将其选中。 “复制范围”活动随即添加到“使用 Excel 文件”活动中。
    4. 在“复制范围”活动中:
      • 单击“来源范围”字段右侧的加号 ,然后选择“Invoices”>“Invoices [工作表]”。您的选择在字段中显示为“发票 [发票]”。

        您已指明要从文件“Invoices”中复制“Invoices”工作表。

      • 单击“目的范围”字段右侧的加号 ,然后选择“Rec”> “Invoices [工作表]”。您的选择在该字段中显示为“[Rec] 发票”。

        您已指明要将复制的范围粘贴到“Rec”文件中的“Invoices”工作表中。



  4. 步骤 4:进行必要的计算以比较数据。
    1. 在“活动”面板中,选择“Excel”选项卡,然后将“写入单元格”活动拖放到第二个“使用 Excel 文件”中“复制范围”下方。“写入单元格”活动随即添加到“设计器”面板中。
    2. 在“写入单元格”活动中:
      • 单击字段右侧的“加号”,docs image单击“写入内容” 字段右侧的,然后选择“文本” 。 在文本生成器中,输入文本Calculated Amount
      • 单击“写入位置”字段右侧的加号 ,然后选择“Rec”>“在 Excel 中指定”。电子表格随即在 Excel 中打开。选择单元格 C1,然后单击“确认”。该字段将更新为您选择的“[Rec] Summary!C1”。

        您已指明要让“Rec”文件的“Summary”工作表中 C 列的第一个单元格包含文本 Calculated Amount
    3. 在前一个“写入单元格”活动下方添加第二个“写入单元格”活动,并在活动中执行以下操作::
      • 单击字段右侧的“加号”,docs image单击“写入内容” 字段右侧的,然后选择“文本” 。 在文本生成器中,输入文本=IF(A2 <> "", SUMIF(Invoices!B:B, A2, Invoices!C:C), "")
      • 单击“写入位置”字段右侧的加号 ,然后选择“Rec”>“在 Excel 中指定”。电子表格随即在 Excel 中打开。选择单元格 C2,然后单击“确认”。该字段将更新为您选择的“[Rec] Summary!C2”。

        您已指明要让“Rec”文件的“Summary”工作表中的 C2 包含公式 =IF(A2 <> "", SUMIF(Invoices!B:B, A2, Invoices!C:C), "")。此公式会检查供应商单元格 (A2) 是否不为空,并会对“Summary”工作表的单元格 A2 中供应商的“Invoices”工作表 C 列中的值求和。
    4. 在前一个“写入单元格”活动下方添加第三个“写入单元格”活动,并在活动中执行以下操作::
      • 单击字段右侧的“加号”,docs image单击“写入内容” 字段右侧的,然后选择“文本” 。 在文本生成器中,输入文本Difference
      • 单击“写入位置”字段右侧的加号 ,然后选择“Rec”>“在 Excel 中指定”。电子表格随即在 Excel 中打开。选择单元格 D1,然后单击“确认”。该字段将更新为您选择的“[Rec] Summary!D1”。

        您已指明要让“Rec”文件的“Summary”工作表中 D 列的第一个单元格包含文本 Difference
    5. 在前一个“写入单元格”活动下方添加第四个“写入单元格”活动,并在活动中执行以下操作::
      • 单击字段右侧的“加号”,docs image单击“写入内容” 字段右侧的,然后选择“文本” 。 在文本生成器中,输入文本=IF(A2 <> "", C2-B2, "")
      • 单击“写入位置”字段右侧的加号 ,然后选择“Rec”>“在 Excel 中指定”。电子表格随即在 Excel 中打开。选择单元格 D2,然后单击“确认”。该字段将更新为您选择的“[Rec] Summary!D2”。

        您已指明要让“Rec”文件的“Summary”工作表中的 D2 单元格包含公式 =IF(A2 <> "", C2-B2, "")。此公式会检查供应商单元格 (A2) 是否不为空,并计算“Summary”工作表 C2 和 B2 单元格中值的差额。
    6. 单击“添加活动”docs image然后在屏幕顶部的搜索框中找到 “复制范围” 活动并将其选中。 “复制范围”活动随即添加到“设计器”面板中。
    7. 在“复制范围”活动中:
      • docs image单击 字段右侧的“加号”, ,然后选择 “Rec > “在 Excel 中指明” 。电子表格随即在 Excel 中打开。 选择范围C2:D2 ,然后单击“确认” 。 该字段将更新为您选择的[Rec] Summary!C2:D2
      • docs image单击 字段右侧的“加号”, ,然后选择 “Rec > “在 Excel 中指明” 。电子表格随即在 Excel 中打开。 选择范围C3-D20 ,然后单击“确认” 。 该字段将更新为您选择的[Rec] Summary!C3-D20
      • 从“复制内容”下拉菜单中,选择“公式”

        您已指明要将复制范围 C2:D2 中的公式粘贴到工作表的同一列中。

    8. 在“活动”面板中,选择“Excel”选项卡,然后将“写入单元格”活动拖放到最后一个“复制范围”活动下面。“写入单元格”活动随即添加到“设计器”面板中。
    9. 在“写入单元格”活动中:
      • 单击字段右侧的“加号”,docs image单击“写入内容” 字段右侧的,然后选择“文本” 。 在文本生成器中,输入公式=SUM(Summary!D:D)
      • 单击“写入位置”字段右侧的加号 ,然后选择“Rec”>“在 Excel 中指定”。电子表格随即在 Excel 中打开。选择 Invoices 工作表,接着选择单元格 F1,然后单击“确认”。该字段将更新为您选择的“[Rec] Invoices!F1”。

        您已指明要让“Rec”文件的“Invoices”工作表中的 F 列中第一个单元格包含公式 =SUM(Summary!D:D)。该公式会将“Summary”工作表的 D 列中的差异总和添加到“Invoices”工作表中的 F1 单元格中。


  5. 步骤 5:如果差异总和大于 0,请发送一封电子邮件,其中包含有关对帐的详细信息。
    1. 单击“ 添加活动”docs image ,然后 在屏幕顶部的搜索框中找到并选择“If ” 。“IF 条件”活动随即添加到“设计器”面板中。
    2. 在“IF 条件”活动中,单击“加号”docs image然后选择“条件生成器”
    3. 在“条件生成器”中,添加条件“如果差的总和大于 0”:
      • 单击左侧字段右侧的“加号”docs image,然后选择“Rec” > “在 Excel 中指定”。电子表格随即在 Excel 中打开。选择 Invoices 工作表,接着选择单元格 F1,然后单击“确认”。该字段将更新为您选择的“[Rec] Invoices!F1”
      • 从中间的下拉菜单中,选择“大于”。
      • 单击右侧字段右侧的“加号”,选择“数字”,输入 0 并单击两次“保存”

        如果满足此条件,将执行您在 If 活动的 Then 分支中添加的活动。

    4. 在“活动”面板中,选择“ CSV ” 选项卡,然后将 “写入 CSV ” 活动拖放到 If 活动的 Then 分支中。 “写入 CSV”活动随即添加到“设计器”面板中。
    5. 在“写入 CSV”活动中执行以下操作:
      • docs image单击 字段右侧的“加号”, ,然后选择 “文本 ” 。在文本生成器中,输入reconcile ,然后单击docs image在文本生成器右侧的菜单中选择“项目笔记本(笔记) ”> “Date [工作表]” >“ YYYYMMDD [单元格]” 。 文本生成器中的文本将更新为reconcile Excel Date!YYYYMMDD 。 在末尾输入文本.csv ,然后单击“保存”。 最终文本应为reconcile Excel Date!YYYYMMDD.csv
      • 单击“写入自”字段右侧的加号 ,然后选择“Rec”>“Summary [工作表]”。该字段将更新为您选择的“[Rec] 摘要”。

        您已指明要在项目文件夹中创建一个 CSV 文件,其名称中要包含单词“reconcile”和今天的日期,然后将“Rec”文件中的“Summary”工作表复制到该文件中。

    6. 在“活动”面板中,选择“邮件”选项卡,然后将“使用桌面 Outlook App”活动拖放到“写入 CSV”活动下方 If 活动的 Then 分支中。
    7. 在活动中,“帐户”字段中已经选择默认的电子邮件帐户。如果您要使用其他帐户,请从下拉菜单中选择。
      在“引用为”字段中,保留默认值 Outlook 作为在自动化中引用该帐户时使用的名称。
    8. 在“活动”面板中,将“发送电子邮件”活动拖放到“使用桌面 Outlook App”活动中。
    9. 在"发送电子邮件"活动中:
      • 单击字段右侧的“加号”,docs image单击“发件人帐户” 字段右侧的,然后选择“Outlook”
      • 单击字段右侧的“加号”,docs image单击“收件人”字段右侧的,然后选择“文本” 。 在文本生成器窗口中,输入电子邮件的接收地址。 例如,您可以输入自己的电子邮件地址,将电子邮件发送给自己。 如果您保留“草稿”选项为选中状态,则自动化不会发送电子邮件,而是会将电子邮件保存到 Outlook“草稿”文件夹。
      • 单击字段右侧的“加号”,docs image单击“主题” 字段右侧的,然后选择“文本” 。 在文本生成器窗口中,输入Reconciliation errors for然后docs image在文本生成器右侧的菜单中选择“项目笔记本(笔记) ”> “Date [工作表]” > “Today [单元格]” 。 文本生成器中的文本将更新为Reconciliation errors for Date!Today
      • 单击字段右侧的“加号”,docs image单击“正文” 字段右侧的,然后选择“文本” 。 在文本生成器窗口中,输入电子邮件正文的文本,例如 One or more suppliers have reconciliation errors. See attached CSV file for details.
      • 对于附件,选择“文件”,然后输入与第 5 步中“写入 CSV”活动中所用文件名相同的文件名 reconcile Excel Date!YYYYMMDD.csv。例如,您可以打开“写入 CSV”活动的“写入哪个文件”字段的文本生成器,复制所有文本,然后粘贴在文件附件字段的文本生成器中。


    10. 在 StudioX 功能区中单击“保存”,以保存自动化,然后单击“运行”来执行此自动化。

    将发票和摘要数据复制到 reconcile.xlsx 文件,执行计算,并且由于发票中的总额与其中一位供应商的摘要中的金额不匹配,reconcile.xsls 文件的摘要表将会复制到名称包含今天日期的 CSV 文件中,该文件将附加到电子邮件中并发送到指定的地址。在该文件中,您可以通过单元格 D3 中大于 0 的值来识别对帐错误的供应商。

此页面是否有帮助?

获取您需要的帮助
了解 RPA - 自动化课程
UiPath Community 论坛
Uipath 白色徽标
信任与安全
© 2005-2024 UiPath. All rights reserved.