朋友们,经过我3周没日没夜的撸代码,HaoTemplate终于要和大家见面了!
事实上,昨天我还在做功能测试,改代码……
为了能尽早介绍又燃又炸的功能,我就不大篇幅聊什么是HaoTemplate了,有兴趣的朋友可以戳下方的3条文章链接进行了解
文章链接:HaoTemplate又活过来了
文章链接: MATLAB如何制作Excel模板
文章链接: 不擅长Excel宏的人
简单的一句话介绍是:
有1000个Excel文件需要做一系列类似的格式修改(字体加粗 ,单元格背景颜色,单元格边框,等等)
->写MATLAB脚本,实现对Excel批量操作
->写脚本好麻烦,几百行的参数设置,太绕了,比Excel改格式还让人烦躁
-> HaoTemplate能够帮你快速生成修改Excel格式的脚本。
接下来具体聊一聊这一款HaoTemplate里都有哪些我特别喜欢的功能
01
HaoTemplate和之前两个版本有什么不同
去年在发布第二版HaoTemplate的时候,我用了一个例子介绍HaoTemplate有多便捷。
如果要把下面这个表格转成模板代码,要花多长时间?

我在文章里给出的时间是,40秒。相比自己撸代码,40秒已经非常快了。
那么,今天用新发布的HaoTemplate把一个更复杂的图表转成模板代码,要花多长时间?
一个回车键!

这次的HaoTemplate其实是完全推翻重新做的,无论是在界面设计上,还是功能开发上,完全放弃了之前两个版本的框架,并且在很多细节上下足了功夫,包括提示框,快捷键,等等。

02
文件的选取
HaoTemplate中支持两种形式的文件选取方式:
一种是用最常见的文件选取框,通过uigetfile函数可以实现。
另一种是通过文件拖拽选取,对这种方式感兴趣的朋友,可以戳下面的文章链接,里面有发布相关的源代码。
文章链接:我被自己的这波操作蠢哭了……

03
快捷键
HaoTemplate之所以比之前两个版本大大提速,除了功能重新设计之外,快捷键也是其中一个非常重要的因素。
在Excel中选取完目标单元格之后,回到HaoTemplate界面, 通过“回车键”就可以实现格式的复制,界面上也有相应的“格式复制”按钮,不过在熟练“回车键”之后,这个按钮基本上也不常使用。
除此之外,再分享有一个众所周知的小技巧,使用{Alt}+{Tab}进行Excel与HaoTemplate之间的切换,用“回车键”进行格式复制。

04
代码框
相比之前两个版本的HaoTemplate,还有一个很大的不同是,用代码编辑框代替了之前的步骤记录框。
之所以做这个功能上的修改,是因为通过代码编辑框可以更快速便捷地在所生成的代码上进行微调删减。
此外,界面上有“代码生成”的按钮,支持代码导出到m文件中,省去了额外复制粘贴代码的麻烦。

05
不止复制单元格,图表也能复制
这个功能的想法,来源于我之前写过的一篇关于plot的文章,其中使用的就是通过Excel的图表功能进行数据可视化。
文章链接:MATLAB的plot,一点也不酷!
在平时工作学习过程中,我们会接触到很多非常好看的Excel图表,可是光看着图表,但是却不知道如何去制作复原,这挺让人懊恼的。
HaoTemplate新增的功能Chart Copy,可以解决这个问题。

Chart Copy功能目前可以实现图表大部分的参数复制,比如图表类型,数据选择,Title,Legend,等等。
不过至于更细化的设置,比如数据类型,或者Title字体加粗等,这些后续的操作都需要大家在已生成的代码中进行添加设置。操作并不复杂,通过Excel的宏录制,将录制代码复制到MATLAB脚本中,稍作修改就可以使用了。
06
有选择的复制
在HaoTemplate最上方,有两排的按钮。这些按钮是用于设置相应格式复制的激活与取消。
比如,如果你并不想复制的Excel里字体的粗体,就可以通过点击相应的按钮,取消粗体复制。这样可以大大缩减代码量。
此外,有一个快捷键“0”,可以实现功能的全选与全不选,这个在“帮助”按钮里有介绍。
每一个按钮,我都设计了提示浮框,光这个细节,我还是觉得HaoTemplate是一个诚意满满的作品的。

07
功能的矛盾性
你要说HaoTemplate有没有缺点,这肯定是有的,一款工具不可能只有好的一面。
HaoTemplate最大的一个问题,大家在使用过程中也会发现,就是选取单元格区域,如果第一个单元格是粗体,或者背景颜色是蓝色,那么一整块单元格区域也都变成和第一个单元格一样的格式。
这个问题其实是可以避免的,可以逐一识别每一个单元格格式,再记录到代码框中。
不过这就存在一个矛盾点是,如果逐一识别每一个单元格,会导致整个工具使用非常耗时,肉眼可见的卡顿。
所以,在功能全面与运行效率上,我只能作折中选择。如果格式有明显的不同,还是建议大家分两次选取单元格区域,进行格式录制。

今天HaoTemplate的介绍就到这里为止,更多的细节,大家可以在拿到工具之后去体验一下。
接下来,聊一下如何获取这个工具。微信公众号后台回复“HaoTemplate”,获取工具下载链接。
工具开发不易,我不要脸的说一句,HaoTemplate应该是目前做MATLAB与Excel交互最好的一款工具。觉得HaoTemplate不错的朋友,欢迎转发分享这篇文章支持我一下,非常感谢!

最后,请允许我为自己的知识星球打个广告,因为目前看来,大家对知识星球的反馈都非常好。
知识星球目前有200位球友,实现了我在年初给自己定下的小目标。这200位朋友中,有十几位不同专业领域的博士,有各大主机厂的资深工程师,这些朋友都非常优秀,从我之前发布的电子书就可以看出来。
文章链接: 写了三年,我终于写了一本属于自己的书
目前知识星球里一共有3个实战训练营,分别是
1) 小白训练营,针对MATLAB初学者的基础训练
2) 高效工作训练营,掌握各种提高工作效率的MATLAB技巧
3) GUI训练营,让你从GUI入门到精通
除此之外,大家还会在知识星球里分享平时的工作学习心得,分享如何通过编程的方式解决工作上的繁琐工作,我也经常会在星球里分享我编程的心得,比如知识星球里有一个板块“GUI笔记”,就是我用来记录平时写工具的思路历程。
其实前面介绍的这些,都不重要,虽然我知道有些朋友比较看重这些。知识星球里最重要最有价值的是,你有机会和这么多优秀的朋友共同进步,互相学习,这绝对是对自己2020年最好的投资。
为了防止有人冲动消费,加入知识星球之后感觉不合适的朋友,知识星球支持三天内无条件退款,感兴趣的朋友欢迎扫码加入。

作者介绍|打浦桥程序员
汽车行业工程师
目前在德国从事系统工程
和你一起用MATLAB的角度看世界
