EBSILON®Professional Online Documentation
数据传输和结果显示 / 数据 - 导入 / 用户 Excel 导入
本主题中
    用户 Excel 导入
    本主题中

    用户 Excel 导入


    通用

    可以通过从微软 Excel 表格中导入数据来修改组件的规格值。管道结果不能被导入。

    可以在一个工况或几个工况中同时修改这些值。

    在"标准 Excel"界面接口中,输入的数据必须定位在 Excel 表格的固定位置,而"自由布局 Excel"(或"用户 Excel")界面接口允许用户定义 Excel 表格中的数据排列。

    如果输入数据是由其它软件提供的,又想避免在 Excel 表格中通过复制和粘贴来重新排列数据,那么这一点尤其有用。

    在 Excel 表中为EBSILONProfessional 循环中的变量分配位置通常是通过使用 Excel 的"定义名称"功能完成的。另外,也可以使用 Excel 工作表第一行的格式化指令。

    需要

    • 创建 Excel 工作表,
    • 在专门分配的单元格中输入要导入的值,并
    • 为该 Excel 表的某些列和行定义特定名称,
    • 保存并关闭该 Excel 表。

     

    EBSILONProfessional 将识别这些 Excel 定义的名称,并尝试通过应用一些规则从工作表中读取规格值。

     

    这些规则描述了,

    • 工作表的哪些单元格有要读取的值(源),以及
    • 文件中要被取代的规格值(目标),以及
    • 要考虑的工况和组件。

    EBSILONProfessional 提供了一些 Excel 表格样本。


    如何从 Excel 文件中导入数据?

    要从 Excel 文件中导入数据,从菜单栏中选择 "数据-->用户 Excel-->输入" 命令。

    打开 "从 Excel 文件导入数值" 窗口。

    选中为导入而创建的 Excel 文档,并点击 "打开"。

    Excel 将在后台启动,Excel 文件将被打开。

    这个工作表的定义名称被读取,数据根据导入 Excel 数据规则从这个工作表导入。先前存储在文件中的值将被替换。

    为了能够正确地导入一个数值,必须指定单位(例如 kW, MW)。如果该单位与文件中指定的单位不同,该值将被转换为文件中指定的单位。


    从 Excel 导入数据的规则

    Excel 表格数据配置须符合以下规则,以便 EBSILONProfessional 可以正确处理。

     

    定义名称的规则

    要指定一个工况,使用工况名称。

    要指定一个组件,使用组件名称。

    要指定一个规格值,使用标识符。

    这种类型的 Excel 表格中的一行可以容纳一个特定组件特定规格值(数值和单位)的数据。该行的定义名称必须是

    • 以字符串"S_"开头,
    • 后面是一个组件名称、
    • 一个点和
    • 一个规格值标识符。

    例子:"S_Input_of_value_8.NCV "指定了一个行,该行预计将保存名称为"Input_of_value_8 "的组件由"NCV"指定的规格值的数据。

     

    这种类型的 Excel 工作表的一列可以容纳一个特定工况的数据。这一列的定义名称必须

    • 以字符串"P_"开始
    • 后面是一个工况的名称

    例子:"P_Variation_C"指定了一个列,保存名为"Variation_C"的工况的数据。

     

    在这种类型的 Excel 表格中,有一列必须保存描述规格值单位的数据。这一列的定义名称必须是"X_UNIT"。

     

    其它规则

    如果 Excel 文件包含一个以上的工作表,EBSILONProfessional 将尝试读取所有的工作表。必须注意为所有工作表定义相应的名称。请注意,在 Excel 中,名称可以在局部为特定的工作表或为整个工作簿全局定义。EBSILONProfessional 可以识别这两种类型的名称。

    如果为单个单元格而不是整行(或整列)指定名称,EBSILONProfessional 将使用该单元格所在的相应行(或列)。

    包含数值的单元格必须被格式化为"数字"。这些单元格不能是空的。至少要输入一个 0。

    包含单位字符串的单元格必须被格式化为"标准"或"文本"。

     

    例子

    下面是一个 Excel 工作表的一部分,保存了一个名为"冷却液进口"的组件的规格值,类型是"起始值"(33)。要修改的规格值的标识符是 "P"、"T"、"H "和 "FMAS"。此外,还存有名为 "Variation_A" 和 "Variation_B" 的两个工况的规格值。

     

    第 4、5、6、7 行和 B、C、D 列必须被命名。按照上面列出的规则,定义的名称必须拼写如下:

    行 / 列

    定义名称

    4

    S_CoolantInlet.P

    5

    S_CoolantInlet.T

    6

    S_CoolantInlet.H

    7

    S_CoolantInlet.FMAS

    B

    X_UNIT

    C

    P_Variation_A

    D

    P_Variation_B

     

    这是 Excel 所显示的定义名称列表。

    单元格 C4、D4、C5、D5、C6、D6、C7、D7 必须被格式化为"数字"。

    单元格 B4、B5、B6、B7 必须格式化为"文本"或"标准"而且必须包括有效的单位字符串。


    错误信息

    如果 EBSILONProfessional 不能从 Excel 定义的名称列表中提取到模型的

    • 组件名称
    • 规格值的标识符
    • 一个单位字符串
    • 工况名称

    将得到一个错误信息,并且相应的数据将不会被导入。


    使用格式行

    使用 Excel 定义名称为 Excel 表格的布局提供了非常高的灵活性。在某些情况下,不需要这种灵活性,而是希望将大量的数据从 EBSILONProfessional 直接转移到 Excel,而不是在准备工作上投入精力,如为行和列命名。

    这里可以简单地在 Excel 工作表的开头插入一个带有格式化命令的行:

    有三个命令,必须在特定单元格中给出:

    A1 单元格必须有命令 "EbsNames Col I" 或 "EbsNames Row I"。这里,"I" 是关键的字母或行的编号,它包含了规格或结果值的名称。该名称包括对象名称、一个点和规格或结果值的标识。对于测量值(组件 46),组件名称的规格就足够了,计算值(".RESULT")就会自动给出。

    B1 单元格必须有命令 "EbsProfiles Col I to J" 或 "EbsProfiles Row I to J"。这里,"I" 和 "J" 分别是第一和最后一列或行的关键字母或编号,它们应该包含来自  EBSILONProfessional 的数据。为了简单起见,数据一次写成一个工况,而不考虑工况的层次或工况的名称。但是在这个界面接口上,不可能选择一个工况,也不可能指定哪个工况被写入哪里。

    C1 单元格可以包含 "EbsUnits Col I" 或 "EbsUnits Row I" 命令。这里,"I"是关键字母或行的编号,它包含了规格值的单位。这些单位可以与模型中使用的单位不同。