标签:
杂谈 |
作者:Excelers
大家好,我是星光,今天我们来对最近几天小伙伴在微信留言区提出的问题做个解答。
导读:
①VBA定义变量
②SQL语句UNION和UNION ALL的区别是什么?
③一个文本倒置函数,把我爱林志玲,变为 玲志林爱我
第一个问题,有个朋友问VBA声明变量的问题
DIM i 和DIM i&
先说相同点。
i和i&他俩都是变量。
然后说不同。
i&,&是变量i的类型,全称是long。&就是long的简写形式。
Dim i&等同于dim i as long
i呢?它没有设变量类型,就默认是变体型变量。
Dim i 等同于 dim i as Variant。
重点说一下变量类型的简写,常用的是$、&等。初学VBA的小伙伴对此表示很蒙。记得之前有学员说写代码变量用简写是不负责任的表现,这个……我的第一反应是,谁要对谁负责人?发生了什么事?哦哦,没发生什么事!辣么凭神马?
如何速记变量简写呢?论坛里的裙子老师有一个速记法,挺好的,大家不妨参考一下:
http://ww4/large/005IRek6gw1f5l8e258j7j30jg0azjuy.jpg
第二个问题, 之前分享了一段SQL查询语句。类似下面这种:
SELECT * FROM [1月$] UNION ALL
SELECT * FROM [2月$]UNION ALL
SELECT * FROM [3月$]
有个朋友问它和下面的语句有什么区别?
SELECT * FROM [1月$] UNION
SELECT * FROM [2月$] UNION
SELECT * FROM [3月$]
其实就是UNION 和UNION ALL语句的区别。
两者的相同点都是多表汇总。
不同点,最主要的一个就是,UNION ALL是把所有的数据合并到一起,UNION是把所有的数据去重复后合并到一起。此外,UNION会对记录默认排序,UNION ALL木有排序处理。UNION做了这么多事,效率自然也就比UNION ALL低了。
网上有一句话,对于一个初中级的数据分析员来说,有三个技能是必须要掌握的,分别是SQL/EXCEL/PPT。SQL用来数据库取源,EXCEL用来数据分析,PPT来数据呈现。这是经验之谈,如果你有志于数据分析的,建议认真学一下SQL语句。
另外,EXCEL毕竟不是数据库,它即没有严控的数据结构也没有严控的数据类型,所以SQL之于EXCEL有很多局限性。
第三个问题,有朋友问Excel有没有文本倒置函数?
什么是文本倒置呢?举个栗子。
我爱林志玲,倒置就是,玲志林爱我
表问我玲志林是谁,和林志玲又是什么关系……
Excel并没有专门处理这样问题的工作函数,所以如果用工作表函数处理这样的问题很费劲,也有蛮多的局限性。
但VBA函数有StrReverse,写成自定义函数,也就一句话。
Function 倒置(s)
倒置 = StrReverse(s)
End Function
处理我们的栗子就是:
=倒置("我爱林志玲")
结果玲志林爱我。
最后一个问题,忘记是哪期了,有人问如何制作每页带小计的数据表?
这个知识点,我们之前有和大家分享过,请看老祝的动画演示。
http://ww3/large/005IRek6gw1f5l8gxf94zg30c80fmwxp.gif
握手,掰掰,我是星光,下期再见。
EXCELHOME的微信号:IExcelHome