在工业控制系统实施的各个环节中,我们总会遇到各种各样的“信息数据表”,如BOM单、IO表、通道分配表、监控数据表等。当数据量比较大的时候,筛选功能就很必要了。通常的办法就是直接使用Excel的“筛选”功能,但是在需要反复变更筛选条件的时候,操作略显繁琐。
下面介绍利用Excel “表” 和 “切片器” 功能,实现更加便捷的“筛选”小技巧。
正 文
为了测试,我做了这样一张控制系统IO信息统计表,其中包括信号标签名、信号类型、所属系统、物理位置、通道分配等信息。
Step 1:插入“表”
点击数据区域任意位置,按“Ctrl+T” 插入“表”,软件会自动识别“表”的范围;
Tips:1. 插入“表”自带“标题行”显示功能,但前提是选中的单元格位置在“表”的范围内;
如果选中的单元格位置在数据表范围之外,标题行就没有了;
可以通过“冻结窗格”功能,冻结首行;
这样无论鼠标点哪,标题行始终显示;
2. 如果该信息表后续有“在中间插入一行”的需求可能,建议序号列使用“ROW()-1”函数进行填充,这样在插入一行之后,序号自动全表更新。
Step 2:插入“切片器”
选中“表”范围内任意位置,菜单栏“表设计”,点击“插入切片器”,选择需要筛选的列标题;
在“切片器”内选中任意条件,就可以很轻松的完成单一条件或多重条件的数据筛选,具体使用方法简单摸索一下就会了;
Step 3:固定“切片器”位置
可以看到,当我们以“压力”作为筛选条件的时候,筛选出来的信息还是很多,需要滚动页面进行查看,但是在滚动页面的时候,“切片器”并不会跟随移动,那么如果我们要再次修改筛选条件的时候,还需要将页面滚动回初始位置,才能够完整的看到“切片器”。
为了解决这个问题,我上网搜索了一下,并没有比较直接的设置办法;网上给出的解决方案是,借助VBA将“切片器”固定在显示界面的某个位置,
方法如下:1. 选中任意单元格,按“Alt+F11” 调出VBA编程界面;2. 双击左侧“ThisWorkbook” 并在右侧敲入如下代码:
可以根据个人需要增加或减少需要固定的“切片器”,同时可以调整“切片器”所固定的位置。3. 按 “Alt+Q“ 关闭VBA编程界面;4. 返回Excel界面,滚动页面,并点击任意位置,此时我们看到“切片器”会立即移动到界面指定位置。
5. 将本数据表“另存为” “Excel 启用宏的工作簿(*.xlsm)”
至此,一个带有便捷筛选功能的信息数据表就完成了~