订阅

UiPath StudioX

UiPath StudioX 指南

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

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

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

  1. 两个“使用 Excel 文件”活动以指定包含发票的 Excel 文件以及我们要在其中校正数据的文件。
  2. 一系列“写入单元格”活动,用于将两个列标题添加到对帐 Excel 文件中,并计算一个供应商的发票总和以及该总和与初始摘要中金额之间的差额。我们将添加一个“复制范围”活动,将我们为一个供应商添加的公式复制到工作表中的所有行中,以便可以对所有供应商执行相同的计算,然后再添加一个“写入单元格”活动,以添加总差额到单元格。
  3. 一个“If”活动,我们将在其中添加一个条件,如果有对帐错误(差额总和大于 0),则应创建一个包含详细信息的 CSV 文件并将其通过电子邮件发送到指定的地址。对于电子邮件任务,我们将在“If”活动中添加一个“使用桌面 Outlook App”活动,以指明我们要从中发送邮件的 Outlook 帐户,并在“使用桌面 Outlook App”中添加“发送电子邮件”活动。

第 1 步:设置项目并获取必要的文件。

  1. 使用默认设置创建一个新的空白项目
  2. Download and extract the archive with the automation project in this tutorial using the button at the bottom of this page. Copy the folder data to your project folder.

第 2 步:将 Excel 文件添加到项目中。

  1. 单击“设计器”面板中的“添加活动”plus_iconplus_icon,然后在屏幕顶部的搜索框中找到“使用 Excel 文件”活动并将其选中。“使用 Excel 文件”活动随即添加到“设计器”面板中。
  2. 在活动中:
    • Click Browse browse filesbrowse files next to the Excel file field, and then browse to and select the file invoices.xlsx
    • In the field Reference as, enter Invoices
      您已指明将使用自动化中称为“Invoices”的文件 invoices.xlsx。
  3. 单击“使用 Excel 文件”活动中的“添加活动”plus_iconplus_icon,然后添加另一个“使用 Excel 文件”活动。
  4. 在第二个活动中:
    • Click Browse browse filesbrowse files next to the Excel file field, and then browse to and select the file reconcile.xlsx
    • In the field Reference as, enter Rec
      您已指明将使用自动化中称为 Rec 的文件 reconcile.xlsx。
585585

第 3 步:将数据复制到对帐文件中。

  1. 单击第二个“使用 Excel 文件”中的“添加活动”plus_iconplus_icon,然后在屏幕顶部的搜索框中找到“读取 CSV”活动。该活动已添加到“使用 Excel 文件”活动中。
  2. In the Read CSV activity:
    • 单击“从文件读取”字段旁边的“浏览”browse filesbrowse files,然后浏览至文件 summary.csv并将其选中。
    • 单击“输出到”字段右侧的“加号”plus buttonplus button,然后选择“Rec”>“Summary [工作表]”。此字段会更新为您选择的“[Rec] Invoices”。
      您已指明要将数据从 CSV 文件 summary.csv 复制到摘要工作表中的记录文件。
  3. 在“读取 CSV”活动下方第二个“使用 Excel 文件”活动中单击“添加活动”plus_iconplus_icon,然后在屏幕顶部的搜索框中找到“复制范围”活动。“复制范围”活动随即添加到“使用 Excel 文件”活动中。
  4. 在“复制范围”活动中:
    • 单击“来源范围”字段右侧的“加号”plus buttonplus button,然后选择“Invoices”>“Invoices [工作表]”。您的选择在字段中显示为“Invoices [Invoices]”。
      您已指明要从文件“Invoices”中复制“Invoices”工作表。
    • 单击“目的范围”字段右侧的“加号”plus buttonplus button,然后选择“Rec” > “Invoices [工作表]”。您的选择在该字段中显示为“[Rec]发票”。
      您已指明要将复制的范围粘贴到“Rec”文件中的“Invoices”工作表中。
588588

步骤 4:进行必要的计算以比较数据。

  1. 在“活动”面板中,选择“Excel”选项卡,然后将“写入单元格”活动拖放到第二个“使用 Excel 文件”中“复制范围”下方。“写入单元格”活动随即添加到“设计器”面板中。
  2. 在“写入单元格”活动中:
    • Click Plus plus buttonplus button on the right side of the What to write field, and then select Text. In the Text Builder, enter the text Calculated Amount
    • 单击“写入位置”字段右侧的“加号”plus buttonplus button,然后选择“Rec”>“在 Excel 中指定”。电子表格随即在 Excel 中打开。选择单元格 C1,然后单击“确认”。该字段将更新为您选择的“[Rec] Summary!C1”。
      You have indicated that you want the first cell in column C from the Summary sheet of the Rec file to contain the text Calculated Amount
  3. Add a second Write cell activity below the previous one and, in the activity::
    • Click Plus plus buttonplus button on the right side of the What to write field, and then select Text. In the Text Builder, enter the text =IF(A2 <> "", SUMIF(Invoices!B:B, A2, Invoices!C:C), "")
    • 单击“写入位置”字段右侧的“加号”plus buttonplus button,然后选择“Rec”>“在 Excel 中指定”。电子表格随即在 Excel 中打开。选择单元格 C2,然后单击“确认”。该字段将更新为您选择的“[Rec] Summary!C2”。
      You have indicated that you want C2 from the Summary sheet of the Rec file to contain the formula =IF(A2 <> "", SUMIF(Invoices!B:B, A2, Invoices!C:C), ""). This formula checks if the supplier cell (A2) is not empty and sums the values in the C column of the Invoices sheet for the supplier in the cell A2 of the Summary sheet.
  4. Add a third Write cell activity below the previous one and, in the activity::
    • Click Plus plus buttonplus button on the right side of the What to write field, and then select Text. In the Text Builder, enter the text Difference
    • 单击“写入位置”字段右侧的“加号”plus buttonplus button,然后选择“Rec”>“在 Excel 中指定”。电子表格随即在 Excel 中打开。选择单元格 D1,然后单击“确认”。该字段将更新为您选择的“[Rec] Summary!D1”。
      You have indicated that you want the first cell in column D from the Summary sheet of the Rec file to contain the text Difference
  5. Add a fourth Write cell activity below the previous one and, in the activity::
    • Click Plus plus buttonplus button on the right side of the What to write field, and then select Text. In the Text Builder, enter the text =IF(A2 <> "", C2-B2, "")
    • 单击“写入位置”字段右侧的“加号”plus buttonplus button,然后选择“Rec”>“在 Excel 中指定”。电子表格随即在 Excel 中打开。选择单元格 D2,然后单击“确认”。该字段将更新为您选择的“[Rec] Summary!D2”。
      You have indicated that you want D2 from the Summary sheet of the Rec file to contain the formula =IF(A2 <> "", C2-B2, ""). This formula checks if the supplier cell (A2) is not empty and calculates the difference between the values in cells C2 and B2 of the Summary sheet.
  6. 单击最后一个“写入单元格”活动下面的“添加活动”plus_iconplus_icon,然后在屏幕顶部的搜索框中找到“复制范围”活动并将其选中。“复制范围”活动随即添加到“设计器”面板中。
  7. 在“复制范围”活动中:
    • 单击“来源范围”字段右侧的“加号”plus buttonplus button,然后选择“Rec” > “在 Excel 中指定”。电子表格在 Excel 中打开。选择范围“C2:D2”,然后单击“确认”。该字段将更新为您选择的“[Rec] Summary!C2:D2”
    • 单击“目的范围”字段右侧的“加号”plus buttonplus button,然后选择“Rec” > “在 Excel 中指定”。电子表格随即在 Excel 中打开。选择范围 C3-D20,然后单击“确认”。该字段将更新为您选择的“[Rec] Summary!C3-D20”
    • 从“复制内容”下拉菜单中,选择“公式”
      您已指明要将复制范围 C2:D2 中的公式粘贴到工作表的同一列中。
  8. 在“活动”面板中,选择“Excel”选项卡,然后将“写入单元格”活动拖放到最后一个“复制范围”活动下面。“写入单元格”活动随即添加到“设计器”面板中。
  9. 在“写入单元格”活动中:
    • Click Plus plus buttonplus button on the right side of the What to write field, and then select Text. In the Text Builder, enter the formula =SUM(Summary!D:D)
    • 单击“写入位置”字段右侧的“加号”plus buttonplus button,然后选择“Rec” > “在 Excel 中指定”。电子表格随即在 Excel 中打开。选择 Invoices 工作表,接着选择单元格 F1,然后单击“确认”。该字段将更新为您选择的“[Rec] Invoices!F1”
      You have indicated that you want the first cell in column F from the Invoices sheet of the Rec file to contain the formula =SUM(Summary!D:D). The formula adds the sum of the differences in the D column of the Summary sheet to the F1 cell in the Invoices sheet.
302302

步骤 5:如果差异总和大于 0,请发送一封电子邮件,其中包含有关对帐的详细信息。

  1. 单击最后一个“写入单元格”活动下面的“添加活动”plus_iconplus_icon,然后在屏幕顶部的搜索框中找到并选择“If”。“If”活动随即添加到“设计器”面板中。
  2. 在“If”活动中,单击“条件”字段右侧的“加号”plus buttonplus button,然后选择“条件生成器”
  3. 在“条件生成器”中,添加条件“如果差的总和大于 0”:
    • 单击左侧字段右侧的“加号”plus buttonplus button,然后选择“Rec” > “在 Excel 中指定”。电子表格随即在 Excel 中打开。选择“Invoices”工作表,接着选中单元格 F1,然后单击“确认”。该字段将更新为您选择的“[Rec] Invoices!F1”
    • From the drop-down menu in the middle, select greater than.
    • 单击右侧字段右侧的“加号”plus buttonplus button,选择“数字”,输入 0 并单击两次“保存”。
      如果满足此条件,将执行您在 If 活动的 Then 分支中添加的活动。
  4. 在“活动”面板中,选择“CSV”选项卡,然后将“写入 CSV”活动拖放到 If 活动的 Then 分支中。“写入 CSV”活动随即添加到“设计器”面板中。
  5. In the Write CSV activity:
    • Click Plus plus buttonplus button on the right side of the Write to what file field, and then select Text. In the Text Builder, enter reconcile , and then from the Plus plus buttonplus button menu on the right side of the Text Builder select Project Notebook (Notes) > Date [Sheet] > YYYYMMDD [Cell]. The text in the Text Builder is updated to reconcile Excel Date!YYYYMMDD. Enter the text .csv at the end and click Save. The final text should be reconcile Excel Date!YYYYMMDD.csv
    • 单击“写入自”字段右侧的“加号”plus buttonplus button,然后选择“Rec”>“Summary [工作表]”。该字段将更新为您选择的“[Rec] Summary”。
      您已指明要在项目文件夹中创建一个 CSV 文件,其名称中要包含单词“reconcile”和今天的日期,然后将“Rec”文件中的“Summary”工作表复制到该文件中。
  6. 在“活动”面板中,选择“邮件”选项卡,然后将“使用桌面 Outlook App”活动拖放到“写入 CSV”活动下方 If 活动的 Then 分支中。
  7. 在活动中,“帐户”字段中已经选择默认的电子邮件帐户。如果您要使用其他帐户,请从下拉菜单中选择。
    In the Reference as field, leave the default value Outlook as the name by which to refer to the account in the automation.
  8. 在“活动”面板中,将“发送电子邮件”活动拖放到“使用桌面 Outlook App”活动中。
  9. 在"发送电子邮件"活动中:
    • 单击“发件人帐户”字段右侧的“加号”plus buttonplus button,然后选择“Outlook”
    • 单击“收件人”字段右侧的“加号”plus buttonplus button,然后选择“文本”。在文本生成器窗口中,输入电子邮件的接收地址。例如,您可以输入自己的电子邮件地址,将电子邮件发送给自己。如果您保留“草稿”选项为选中状态,则自动化不会发送电子邮件,而是会将电子邮件保存到 Outlook“草稿”文件夹。
    • Click Plus plus buttonplus button on the right side of the Subject field, and then select Text. In the Text Builder window, enter Reconciliation errors for, and then from the Plus plus buttonplus button menu on the right side of the Text Builder select Project Notebook (Notes) > Date [Sheet] > Today [Cell]. The text in the Text Builder is updated to Reconciliation errors for Date!Today
    • Click Plus plus buttonplus button on the right side of the Body field, and then select Text. In the Text Builder window, enter text for the body of the email, for example One or more suppliers have reconciliation errors. See attached CSV file for details.
    • For Attachments, select Files, and then enter the same file name as the one used in the Write CSV activity in step 5, reconcile Excel Date!YYYYMMDD.csv. For example, you can open the Text Builder for the Write to what file field of the Write CSV activity, copy all the text, and then paste in the Text Builder for the file attachment field.
458458
  1. 在 StudioX 功能区中单击“保存”,以保存自动化,然后单击“运行”来执行此自动化。

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

下载示例

大约一年前更新


另请参阅

教程

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


建议的编辑仅限用于 API 参考页面

您只能建议对 Markdown 正文内容进行编辑,而不能建议对 API 规范进行编辑。