这个也是一个粉丝提问的问题,我们先来看下效果,当我们更改数据,后面的总分就会自动地发生变化,并且表格会按照从大到小的顺序自动排序。新增数据也是可以实现自动排序的。他的操作也并不难,下面就让我们来一起操作下
一、插入超级表
首先我们需要点击表格然后按下快捷键Ctrl+T将表格转换为超级表。我们这个做是为了在新增数据的时候表格也能实现自动排序的效果
二、录制宏
首先我们需要明白你想要按照哪一列进行排序,在这里我们想要根据总分这一列数据来排序。
我们点击【开发工具】功能组,随后在其中找到录制宏,会自动跳出录制宏的界面,我们将宏名称设置为【排序】然后点击确定。因为刚才将普通表转换为了超级表,表头字段的右下角是有排序按钮的,我们在这里直接选择降序,就是从大到小的排列数据,排序完毕后点击一下单元格,然后在录制宏中点击停止录制,这样的话宏就录制完毕了
三、引用录制宏
紧接着我们在【打开工具】这个功能组中点击【vislua basic】进入vba的编写界面。现在我们是在sheet1这个表格中操作数据,所有需要在这个界面中点击下对应的表格名称,随后在跳出的界面中将通用设置为【worksheet】,然后在右上角选择【change】将多余的代码删除掉,随后在中间输入【排序】就是刚才定义的宏名称,这样的话就设置完毕了,直接关闭掉即可
四、更改样式
随后点击表格,在表设计中将表的样式设置为无样式,然后将筛选按钮的对勾去掉,为总分这一列数据添加一个数据条即可,至此就设置完毕了,我们更改数据他就能实现自动排序的效果了
在这里需要注意的是因为利用了录制宏,直接保存的话会提示不能保存vb项目,我们需要将文件另存为可以保存宏的格式,常用的就是xlsm格式。