首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Visio ShapeSheet ShapeData:保持两行同步

Visio ShapeSheet ShapeData:保持两行同步
EN

Stack Overflow用户
提问于 2018-12-30 07:32:01
回答 1查看 223关注 0票数 0

对于形状的ShapeSheet,我有两个形状数据行:

代码语言:javascript
复制
Shape Data  Label    Prompt   Type Format                                                                                                                 Value                       Invisible
Prop.Type   "Type"   ""         4 "Alpha;Beta;Gamma;Delta;Epsilon;Zeta;Eta;Theta;Iota;Kappa" INDEX(4,Prop.Type.Format)   False
Prop.Abbrev "Abbrev" No Formula 4 "A;B;G;D;E;Z;E;T;I;K"                                      INDEX(4,Prop.Abbrev.Format) True

我打算使用它的方式是让用户选择类型,比如说Epsilon,然后让缩写自动切换到Prop.Abbrev.Format中的相应值。

注意:这里使用的值是我的应用程序的实际值的占位符,这里没有显示这些占位符,因此它们不会分散我所需要的真正答案的注意力,即在选择或更改第一个选项时如何保持选择保持同步。

感谢您的任何帮助!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-12-30 21:54:23

此机器上没有Visio,因此无法复制和粘贴工作解决方案。这个方法有点复杂,但非常灵活。

将列表保存在User部分中,而不是Prop中--这将成为用于属性的基础数据。如果您使用的是主模板,那么这也有助于管理字段。

现在还可以在数据中存储索引--此索引指向数组中的适当值。您可以使用操作和侧菜单来设置索引,如果引用正确,这意味着您可以在侧菜单中使用全名和/或缩写,而ShapeSheet在下面完成所有的工作。

您想要查看的函数是:

  • Index (例如,INDEX(1,User.Type)将返回"Beta“。(0-基)
  • Lookup (例如,LOOKUP("D", User.Abbrev)将返回"3“。(0-基)
  • GetAtRef
  • SetAtRef
  • SetAtRefExpr
  • SetF

我有一个类似的业务问题,它依赖于根据形状数据的值设置背景颜色。最后的解决方案可能会包括这样的公式:=SETF(GetRef(Prop.Type),"GUARD(INDEX(LOOKUP(Prop.X,Prop.X.Format),User.Type))")

为了进行更深入的讨论--请查看https://superuser.com/questions/1277331/fillforegnd-in-shapesheet-using-wrong-datahttp://visguy.com/vgforum/index.php?topic=8205.15的扩展讨论--后一个链接还包括一个带有工作形状表的示例文件(嗯,工作到它们暴露了我的问题的程度)。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53975949

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档