Excel使用得好坏一个分水岭之一乃是对定义名称的使用程度如何,大量合理地使用定义名称功能,对整个Excel的高级应用带来极大的便利性和日常公式函数嵌套的可读性得到很大的提升。 Excel催化剂再次以插件的形式对名称管理器的功能进行扩展,以便更方便地对定义名称进行修改、新增等操作。
定义名称是一个非常棒的功能,可定义常量、公式、单元格区域等。日常Excel的制表过程中,大量使用定义名称,必定对Excel公式引用区域、长公式编写等带来很大的可读性的提升。
所以笔者强烈建议在制作表格、报表时,多多定义名称和智能表,让自己的表格对自己和对他人有更友好的体验,特别是有大量函数公式时,公式又需要大量引用不同的单元格区域。
定义名称最主要的目的是让Excel单元格区域产生有意思的名称调用,不再是一种没有意义的单元格地址。
例如,需要在VLOOKUP函数中第2参数引用一个产品表区域,直接引用A2:G100这样的信息,难以理解和检查,如果换为“产品信息表”这样的有意义可快速识别的名称效果就好得多。
同样地在VBA用户群体中,定义名称也是个很棒的东西,可以用来存储大量的配置信息和程序输入、输出等信息的存储。在《Excel专业开发》一书中,甚至对名称的命名也作了规范,带来更好的阅读和查找体验效果。
定义名称命名规则
当大家已经接受了定义名称是个很棒的功能时,如何管理和新建定义名称,就是今天此篇带给大家的新体验,能够实现较原生的名称管理器更大的扩展和使用便捷性得到很大的提升。
同样的,原生的名称管理器,是在一个窗体中进行呈现,一般一次仅能操作一个定义名称,且定义名称时,特别是需要使用函数来定义时,特别不好使,无法像日常在单元格上书写函数那样有函数名智能提示、参数提示等体验。
当需要书写函数时,在此处写函数特别麻烦
此次Excel催化剂对其进行改进,同样使用智能表的方式存储整个工作薄所有的定义名称信息,将信息重新回到单元格中进行管理,可方便使用列表清单的排序、筛选功能,和对定义名称的引用位置进行函数、公式书写时,体验和一般书写函数公式一样。
通过遍历所有定义名称的信息,可方便一览所有的定义名称是否正确,是否需要调整修改,且修改可批量修改好多个名称信息再一次性对其进行更新。
同时一次性新增多个定义名称,新增信息转为在单元格中录入,更方便复制、粘贴、填充,引用公式等功能实现快速输入。
同时有一个最大的优点:可以设置定义名称的显示状态,在普通界面新增的定义名称,只能为显示的状态,不能对其设置隐藏,而此篇实现的定义名称管理维护,可实现对定义名称的显示状态进行修改,特别适用于对Excel模板进行设计维护的管理者们大量使用名称后,当文件转移到终端用户使用时,不显示名称,防止用户不小心破坏名称内容。
和上篇外部链接维护逻辑一样,先遍历出所有现有定义名称,然后在遍历出来的智能表上进行修改和新增,再批量一次性维护进Excel中。
功能入口
点击后,即可出现以下名称清单
定义名称清单
可对现有的名称的RefersTo引用位置进行修改,或其他列的内容进行修改,具体列的说明可点击首行标题行,有相应的批注说明。
同样地,可以新增行的方式新增定义名称,在下一步中,程序将会对新增的名称行数据进行批量写入生成新的名称。
需要合理地使用作用范围,范围从小到大,若工作表级已足够就没必要扩大到工作薄级别,这和程序中的定义变量的思想一致,作用域尽可能小
同一个作用域下,名称的名字不能重复,若重复,程序将只会与最后出现的记录为准,覆盖之前的记录,不同作用域可命名相同名称,但不建议,最好名字上有区分作用域
当回写过程中,有出现异常,将在最后一列的UpdateStatus上作标识,正常的话显示成功字样。
image.png
隐藏状态的定义名称不显示在名称管理器中
Excel其实已经将许多能力赋予了普通用户,就像定义名称,就犹如一般程序中的变量的作用,写过程序的人都知道变量的重要性,所以使用Excel的普通用户,若定义名称使用得够彻底,同样会带来许多的益处。
Excel催化剂在原生的名称管理器的局限下,让定义名称使用起来更畅快,让重度Excel用户们得到更好的使用体验,希望大家能够喜欢Excel催化剂奉上的精彩辅助功能。