在Blueprism中获取命名范围作为集合

时间:2018-04-18 08:16:04

标签: excel named-ranges blueprism

BluePrism Excel VBO有Get Worsheet As CollectionGet Worksheet Range as Collection个动作,但作为一个经验丰富的VBA开发人员,我知道最好引用命名范围。 (它使你不太可能重新安排Excel)

但是,我找不到操作来将命名范围的内容作为集合。如果它存在,它是如何调用的,如果不存在,是否可以通过简单的方式实现相同的目标?

(或者更好,我可以在C#中创建它并与同事分享吗?)

2 个答案:

答案 0 :(得分:3)

当我使用命名范围时,我使用两个动作:

  1. 获取命名范围地址
  2. 将工作表范围作为集合
  3. 第二个是标准的blueprism实用程序,所以你可以随时使用它。 “获取命名范围地址”的代码并不复杂,因为它只有一行代码:

    Address = GetWorksheet(handle,sWB,sWS).Range(sRange).Address
    

    结果是一个字符串,表示格式为$ A $ 1:$ B $ 2的范围。 “获取工作表范围作为集合”需要一个输入“开始单元格”,一个用于“结束单元格”,因此要组合这些功能,您需要将其拆分并将一部分地址作为“起始单元格”发送,另一个是“终结细胞”。

    事实上,您还可以改进标准的“将工作表作为集合”来接受该格式的范围,因为这很简单。

答案 1 :(得分:1)

您可以将excel视为数据库,并且可以使用OLEDB在Excel工作表上进行查询。 excel的连接字符串为:

Provider=Microsoft.ACE.OLEDB.12.0;Data Source=[FilePath];Extended Properties="Excel 12.0;HDR=YES";

在excel工作表上查询时,只需给出格式或顺序的列名即可。

select [column1],[column2],... from [SheetName$]

select [column2], [column1], .... from [SheetName$]

这将返回一个集合,其标题与excel标头中的名称相同。