在本教程中,你将创建 Power Automate 流来提取 Excel 电子表格中的文本,而无需编写代码。
此流使用一个电子表格,其中包含有关公寓大楼的问题,并将其分类为两个类别:管道和其他类别。 它还提取发送它们的租户的姓名和电话号码。 最后,流程会将此信息追加到 Excel 工作表。
本教程中,您将学习如何:
- 使用 Power Automate 创建流
- 从 OneDrive 上传 Excel 数据
- 从 Excel 中提取文本,并将其发送以进行命名实体识别 (NER)
- 使用 API 中的信息更新 Excel 工作表。
先决条件
- 一个 Azure 帐户。 创建试用版或登录。
- 语言资源。 如果没有,可以在 Azure 门户中创建一个,并使用免费层完成本教程。
- 创建资源时为你生成的密钥和终结点。
- 包含租户问题的电子表格。 GitHub 上提供此教程的示例数据。
- OneDrive 的 Microsoft 365。
将 Excel 文件添加到 OneDrive
从 GitHub 下载示例 Excel 文件。 此文件必须存储在 OneDrive 帐户中。
问题以原始文本报告。 我们使用命名实体识别(NER)功能提取人员名称和电话号码。 然后,此流程在描述中查找“管道”一词来对问题进行分类。
创建新的 Power Automate 工作流
转到 Power Automate 站点并登录。 然后,选择“创建”和“计划的流”。
在“生成计划的云流”页上,使用以下字段初始化你的流:
字段 | 值 |
---|---|
流名称 | 计划的审查或其他名称。 |
正在启动 | 输入当前日期和时间。 |
重复间隔 | 1 小时 |
向流添加变量
创建表示添加到 Excel 文件的信息的变量。 选择“新建步骤”并搜索“初始化变量”。 执行此作四次,并创建四个变量。
将以下信息添加到创建的变量中。 它们表示 Excel 文件的列。 如果任何变量已折叠,可以选择它们将其展开。
操作 | 名称 | 类型 | 值 |
---|---|---|---|
初始化变量 | var_person | 字符串 | 人员 |
初始化变量 2 | var_phone | 字符串 | 电话号码 |
初始化变量 3 | var_plumbing | 字符串 | 管道 |
初始化变量 4 | var_other | 字符串 | 其他 |
读取 Excel 文件
选择“新建步骤”,键入“Excel”,然后从操作列表中选择“列出表中显示的行”。
通过填写此操作中的字段,将 Excel 文件添加到流。 本教程要求将文件上传到 OneDrive。
选择“新建步骤”,添加“应用到每一个”操作。
选择“从先前的步骤中选择一个输出”。 在显示的动态内容框中选择“值”。
发送实体识别的请求
如果尚未创建语言资源,则需要在 Azure 门户中创建语言资源。
创建语言服务连接
在“应用到每一个”中,选择“添加操作”。 在 Azure 门户中,转到语言资源的“密钥和终结点”页,获取语言资源的密钥和终结点。
在你的流中,输入以下信息以创建新的语言连接。
注意
如果已创建语言连接并想要更改连接详细信息,请选择右上角的省略号,然后选择“ + 添加新连接”。
字段 | 值 |
---|---|
连接名称 | 与语言资源的连接的名称。 例如 TAforPowerAutomate 。 |
帐户密钥 | 语言资源的密钥。 |
站点 URL | 语言资源的终结点。 |
提取 Excel 内容
创建连接后,搜索“文本分析”并选择“命名实体识别”。 这会从问题的说明列中提取信息。
选择“文本”字段,然后从显示的“动态内容”窗口中选择“说明”。 输入 en
作为语言,并输入唯一名称作为文档 ID(可能需要选择“显示高级选项”)。
在“应用到每一个”中选择“添加操作”,然后再创建一个“应用到每一个”操作。 在文本框内进行选择,然后在出现的“动态内容”窗口中选择“文档”。
提取人名
接下来,在 NER 输出中找到人员实体类型。 在“应用到每一个 2”中选择“添加操作”,然后再创建一个“应用到每一个”操作。 在文本框内进行选择,然后在出现的“动态内容”窗口中选择“实体”。
在新创建的“应用到每一个 3”操作中,选择“添加操作”并添加“条件”控件。
在“条件”窗口中,选择第一个文本框。 在“动态内容”窗口中搜索“类别”并选择它。
确保第二个框设为“等于”。 然后选择第三个框,并在“动态内容”窗口中搜索 var_person
。
在“如果是”条件中,在 Excel 中键入并选择“更新行”。
输入 Excel 信息,并更新 “键列”、“ 键值”和 “PersonName ”字段。 此步骤将 API 检测到的名称追加到 Excel 工作表。
获取电话号码
通过选择名称将应用于每个 3 操作最小化。 然后添加另一个 应用于每个 操作到 应用于每个 2,与之前相似,操作命名为 应用于每个 4。 选择文本框,并添加“实体”作为此操作的输出。
在“应用到每一个 4”中添加“条件”控件。 此控件名为 条件 2。 从第一个文本框的“动态内容”窗口中搜索并添加“类别”。 确保第中间框设为“等于”。 然后在右侧文本框中输入 var_phone
。
在“如果是”条件中添加“更新行”操作。 然后,按照我们之前所做的那样,为 Excel 工作表的电话号码列输入信息。 此步骤将 API 检测到的电话号码追加到 Excel 工作表。
获取管道问题
通过单击名称,最小化“应用到每一个 4”操作。 然后在父操作中创建另一个“应用到每一个”操作。 选择文本框,从“动态内容”窗口添加“实体”作为此操作的输出。
接下来,流检查 Excel 表格行中的问题说明是否包含“管道”一词。如果是,则会在 IssueType 列中添加“管道”。 否则,我们将输入“其他”选项。
在“应用到每一个 4”操作中添加“条件”控件 。 它被命名为 条件 3。 在第一个文本框中,使用“动态内容”窗口搜索并添加 Excel 文件中的“说明”。 确保中间框显示“包含”。 然后在右侧文本框中查找并选择 var_plumbing
。
在“如果是”条件中选择“添加操作”,然后选择“更新行”。 然后像之前那样输入信息。 在“问题类型”列中选择 var_plumbing
。 此步骤将“管道”标签应用于该行。
在“如果否”条件中选择“添加操作”,然后选择“更新行”。 然后像之前那样输入信息。 在“问题类型”列中选择 var_other
。 此步骤向行应用“其他”标签。
测试工作流
在屏幕右上角,依次选择“保存”和“测试”。 在“测试流”下,选择“手动”。 然后,选择“测试”和“运行流”。
Excel 文件会在 OneDrive 帐户中更新。 如以下示例所示: