如何在Visio中的VB.NET中使用Shape.SetFormulas

时间:2017-09-07 21:40:43

标签: .net vb.net visio

下面的代码给出了一个错误:

  

"指定的数组不是预期的类型。"

Sub SetSomeCellValues(ByVal vShape as Shape)
    Dim srcStream as Integer() = {1,1,2,1,1,3}
    Dim theFormulas as Array = {"0"}
    vShape.SetFormulas(srcStream,theFormulas,visGetSetArgs.visSetBlastGuard)
End Sub

我还尝试将theFormulas设置为String()Object(),但两者都会导致相同的错误。如果theFormulas设置为Variant,则此工作在VBA中。我也尝试将srcStream设置为数组。

我在stackoverflow上找到了类似问题的this link,但答案并没有帮助。

我非常感谢任何曾使.SetFormulas.GetFormulas.GetResults函数在.NET中工作的人的帮助。

1 个答案:

答案 0 :(得分:2)

发布的here的Microsoft文档适用于VBA,并明确表示使用2字节整数,这是VBA中的Integer数据类型,但在.NET中是Short或Int16。对于VB.NET,请使用以下输入:

"timestamp": { "date": 0, "day": 0, "hours": 0, "minutes": 0, "month": 0, "nanos": 0, "seconds": 0, "time": 0, "timezoneOffset": 0, "year": 0 }