如何使用VBA向Spark EA中的元素/实体添加标记值?

时间:2017-11-15 14:26:52

标签: excel-vba vba excel

我正在尝试将一些数据从Excel工作表移植到EA模型中。我已经设法构建了一个模型,但是我想在我通过VBA创建的元素/实体中添加一些标记值。我使用了Geert Bellekens EAExcelimporter实用程序并修改/修改它以满足我的要求。但是我无法扩展它以向实体添加标记值。在这方面的任何帮助将不胜感激。

谢谢, 拉胡

1 个答案:

答案 0 :(得分:0)

我现在已经设法为此编写代码。

公共函数addOrUpdateElementTag(anElement As EA.element,Tagname As String,tagValue As String)As EA.taggedvalue     Dim currentElementTag作为EA.taggedvalue     '使用给定名称更新所有标记值     'Dim parentPackage As EA.package     '得到选定的包裹     '设置parentPackage = eaConn.getSelectedPackage()

For Each currentElementTag In anElement.TaggedValues
    If currentElementTag.name = Tagname Then
        currentElementTag.Value = tagValue
        Set addOrUpdateElementTag = currentElementTag
        currentElementTag.Update
    End If
Next
'no tagged value found, so create it
If addOrUpdateElementTag Is Nothing Then
    Set addOrUpdateElementTag = anElement.TaggedValues.AddNew(Tagname, "ElementTag")
    addOrUpdateElementTag.Value = tagValue
    addOrUpdateElementTag.Update
End If

结束功能

希望这对将来的某人有所帮助。

谢谢, 拉胡