我有一个带有形状和相关形状数据的visio文档。我试图从这些形状中提取数据。 一些形状数据字段是公式(在Visio中显示正确的值)但是当获取这些值时,我不确定如何将值作为字符串返回。
这是电话:
avarFormulaArray(iCell) =
shp.CellsSRC(Visio.VisSectionIndices.visSectionProp, iRow,
Visio.VisCellIndices.visCustPropsValue).FormulaU
这些简单的答案是使用.Result
而不是.FormulaU
,但由于它不是正确类型(FormulaArray)必须是公式,因此不会起作用。目前还不确定如何解决这个问题。
任何帮助表示赞赏。
使用@JonFournier建议的解决方案
"""" & shp.CellsSRC(Visio.VisSectionIndices.visSectionProp, iRow, Visio.VisCellIndices.visCustPropsValue).ResultStr(Visio.VisUnitCodes.visNoCast) & """"
以下代码段确保无论形状表单元格中的内容是什么,都会返回结果值/字符串。
.ResultStr(Visio.VisUnitCodes.visNoCast)
附加到开头和结尾的引号给出了结果(值/字符串),好像它是使用我原来的`.FormulaU'但会计算公式并返回值而不是实际公式。
.ResultU
或.Result
的使用将返回0表示不是值的所有内容因此字符串不会正常工作,因为它们返回为0.
答案 0 :(得分:1)
使用.Result(visUnitCode)或.ResultIU()从单元格中获取值。
答案 1 :(得分:0)
在MS Visio避风港 .Value !它有 .Result 您可以在此字段中使用哪种数据类型?
答案 2 :(得分:0)
有关Visio VBA的文献:
Developing Microsoft Visio Solutions (Pro-Documentation)
来自Chapter No.2 "Understanding the Microsoft Visio Object Model的书Microsoft Visio 2010 Business Process Diagramming and Validation的David John Parker 来自David John Parker的书Chapter No. 3 Understanding the ShapeSheet™的Microsoft Visio 2013 Business Process Diagramming and Validation
视频:
Visio, a flyby for developers (Part 2) / John Goldsmith