VBA应用——遍历文件夹及其子文件夹

经常使用excel来进行数据统计和汇总分析的我们有时候需要将很多年份的数据进行汇总,如果我们使用VBA来帮助我们汇总,将会节约我们很多的时间。

如果需要汇总的文件都在一个文件夹中而不存在子文件夹,我们可以在网上找到很多简单的代码,告诉我们用VBA提供的Dir函数来获取文件列表。但如果我们需要汇总的文件有一些在子文件夹中,我们使用Dir来获取文件列表的方法就不太好用了。

怎么办呢?

下面,阁主呈上一份能够遍历文件夹及子文件夹获取文件列表的代码,以飨读者。

食用方法:

函数返回了一个Collection对象,可以通过遍历Collection对象的值来获得目录和文件列表。

 

杂谈——高考志愿填报分析

2015年,阁主的表妹高中毕业。家长打电话来说,看看能否给表妹一些报考的建议。

阁主思来想去,也没有什么特别好的渠道来了解这些学校。本来想着看看网上有没有适合的网站提供一些有价值的信息,结果发现然并卵。各个网站上,所提供的志愿参考,都是基于过去年份的分数来推荐的。那么,在分数线发生变化的情况下,给出的参考价值能有多大,阁主心里打了个不小的问号。

阁主了解到,2015年,河南省已经是出分后报志愿,并且是平行志愿。在收集信息的过程中,阁主也了解了下志愿投档的规则。

首先,将全省所有的考生(当然,分文理科)进行排序(首先比较总分,总分相同的话,比较语文、总分和语文相同的话,比较数学,如果前面三项都相同,就比较英语听力)。然后,按照排名顺序的先后,对每个考试依次按照志愿顺序进行投档。

这样以来,高考志愿填报的大小年情况就会小很多。由此,阁主便有了根据排名顺序,来进行一个录取可能性预测的分析。阁主认为,几十万人的独立决策,其结果应该是符合统计规律的。然后,阁主就收集了从2012年到2014年,三年间河南省理科类高考考生的分数段数据,和各个一本高校的投档线数据。这里需要说明为什么使用投档线数据,因为阁主找不到录取分数线数据,只能找到投档线的数据,而一般来说,投档后,接受专业调剂,被退档的可能性较小。

阁主对分数段数据和高校投档线数据进行统计分析后发现,虽然每年各个高校的录取分数都会发生变化,但是最低投档线考生的分数在全省学生中的排名比例基本是一致的。

由此,阁主认为,可以通过高考成绩在全省考生中所占的比例,来大致预估考生相匹配的学校范围。于是,阁主就出炉了第一版的河南省高考志愿填报参考。并发布在百度文库上,希望能够帮到需要进行志愿填报的莘莘学子。

其后2016、2017、2018年,阁主每年都会对这个参考进行更新,并发布在百度文库上。2018年,阁主对志愿填报参考进行了界面优化,实现了输入分数,自动生成内部跳转链接的功能,做了一些基本的说明。

2019年,阁主的侄女在河北省参加高考。于是,阁主又收集了从2012年到2018年的河北省理工科分数段数据和投档分数线数据,并进行数据分析和汇总。

近年来,由于百度文库的日益壮大,以及有关部门对共享文档方面的要求加严。百度文库的上传、审核效率和体验有明显下降。2018年,阁主在获取到分数段数据后的第一时间就进行了文件更新和上传工作,但由于审核速度和准确性的限制,导致文件在公众面前面世的时候,本科一批的志愿填报工作基本上处于尾声了。

为了避免2019年再次出现这种情况,阁主决定提前上传文件和审核。但是这中间有一个矛盾:阁主的志愿填报参考,最重要的一环,是需要获取考生的排名占比情况,但是提前上传文件,没办法在里面添加排名占比计算表。于是,阁主在最新版本的高考志愿填报参考中,使用了excel2013开始提供的webservice函数。webservice函数能够通过访问指定网址获取数据。于是阁主自己架设服务端,在线提供排位数据。所好的是,阁主的个人博客使用的是独立主机,可以相对自由的架设服务。而对于不能使用webservice函数的情况(比如excel版本过低等),也会在相应位置提供一个超链接,并引导使用者使用浏览器访问的方式获取占比数据。

文末附上2019年河南、河北两省的高考本科一批理工科志愿填报参考以飨读者。

2019年河南省理工一本志愿填报参考  2019年河北省理科一本志愿填报参考

 

Excel应用——2019年河北省理科一本志愿填报参考

1、本文件数据全部来自于官方公开渠道

2、本文件汇集了从2012年开始,到2018年间河北省理科计分人数统计数据,并计算出排位占比。

3、本文件汇集了从2012年开始,到2018年间河北省理科一本投档线统计数据(分院校),并计算出该投档线排位占比。

4、本文件制作了2012-2018年全部一本院校排位占比图,并按照加权平均排位占比,对院校按顺序排列,方便选取心仪的学校。

5、本文件《2012-2018年全部一本院校排位占比图》中,波动程度指各院校最低投档线排位占比波动程度,数据越小,波动程度越低。闯一闯的可能性也越低。

6、本文件《2012-2018年全部一本院校排位占比图》中,相对波动程度指各院校排位占比波动程度相对最大波动程度院校的比值。

7、数据是冰冷的,无情,但是揭示了一般规律。

8、本文件所有内容均为基于过往数据进行计算,不对任何趋势做任何预测。

9、希望每个河北考生都能够进入自己心仪的学校。但本人无法对结果做任何预测和保证。

使用方法:

1、根据提示,启用webservice函数(重要,启用以使用自动查询排位占比功能)

2、输入您的高考分数

3、获取得分排位占比(若webservice函数不能使用,请复制黄色区域中网址到浏览器访问,并将返回数据填入黄色区域;填入数据后,自动获取排位占比功能将失效)

4、根据得分排位占比,在《2018全部一本院校占比图》中选择合适的学校(右上侧灰色区域有超链接,可以快速直达相应的占比位置)

5、根据阅卷情况,占比查找功能约在6月24日前后开放,在此之前,为2018年占比数据,仅供参考。

技术支持:淬剑阁

2019年河北省理工一本志愿填报参考

杂谈——无题

假期最后一天

值班

坐在值班室已经磨得不成样子的椅子上往窗外看

柳树,电线,点缀着丝丝白云的蓝蓝的天

风吹柳条,恰似衣袂翩翩少年

屋里

不知是空调响,还是某些小动物在开会发言

吊顶上嘎吱嘎吱的声音不断

隔壁传来几声叮铃铃的脆响

应该是电流振动着线圈

窗外有几声鸟鸣

还有蚊子想法设法往屋子里钻

人到中年

百无聊赖

前途茫然

蹉跎八年

唉,时间

阁主,你是不是已经忘了自己的座右铭言?

兜兜转转

志玲承旭

继科景甜

孑然一身

对影自怜

斯人已往

各自向前

杂谈——能源与社会

石油为什么会成为战略物资?成为美元与之捆绑的对象?
能源利用效率和速度是否决定了人类社会的终极限制?
人类的几次工业革命,是不是伴随着能源利用率/能源利用速度的提升?
是能源利用率/利用速度的提升导致了工业革命吗?
纵观人类发展的历史长河,人类发展的几个关键点:
直立行走——解放双手,更方便的获取食物
用火——有助消化,减少疾病
建立社会制度体系——社会分工,优化人力资源配置
蒸汽机——让机器给人干活
电力——让更多的机器给人干活
信息产业——让机器替人干活
以上的每一步,阁主觉得都能算作能源利用率/利用速度的提升。
阁主认为,纵观人类社会几千年的历史,都没能够脱离金字塔结构的范畴,在金字塔底部的,是直接能源利用率最高的,越往上,逐级递减。人类社会整体构成了一个耗散系统,我们利用各种各样的能源和资源,来维持和提高自己的生活水平。但是如果没有革命性的能源利用率/利用速度的提升,整个人类社会的耗散系统会维持在一定的高度呈现接近稳定的状态,各个阶层的生活水平也会出现固化。
阁主还依稀记得小时候,灶房里的煤油灯昏黄的火苗,一闪一闪。
阁主还记得小时候,家里堆麦秸垛、玉米秆垛、苞谷芯子、豆杆、树叶子、树枝儿。为的就是做饭生火用。《向往的生活》里面,彭彭每天要劈的木柴,我们一般是不用的,只有过年时候才会用。
现在,家里用液化气,和电。阁主在宿舍,吹着空调。听着机箱的嘶吼,码着字儿。
我们比着父辈那一代人的那个年龄,生活条件有了巨大的改善。是单纯努力造就的吗?他们不努力吗?
当前,贸易战已经全面开打。我们应该如何基于已有技术,提高能源利用效率和利用速度?

随感

今天小满。
昨天是国际计量日。

2019年世界计量日主题活动在京举行
发布时间:2019-05-20 17:36 信息来源:市场监管总局
国际单位制基本单位新定义在中国正式实施5月20日,在第20个世界计量日到来之际,近500名来自计量领域的中外嘉宾、院士、专家学者代表齐聚在北京的中国科技会堂,参加由市场监管总局、中国计量科学研究院、中国计量测试学会、中国计量协会、中国质量标准出版社传媒有限公司共同举办的2019年“世界计量日”主题活动。

但这些跟我似乎都没啥太大关系~

昨晚看完了龙妈之死,也算死得其所?她致力于建立一个新的世界,打破父死子继,兄终弟及的封建轮回。要武装解放全世界的无产者,打破他们的锁链,这个意识实在是超前了些。我怀疑龙妈是不是偷偷学过马克思的《资本论》,接受过美国共产主义者的洗脑,但是我没有证据。

2DB说了,维斯特洛大陆不允许有这么牛逼的人存在。所以,龙妈必须死。于是,山姆,布兰,三傻,二丫,瓦利斯,提里昂轮番上阵,jon,你不姓史塔克,你姓坦格利安,你叫伊耿,你才是真龙血脉,七国之王~balabala~。然后,always know nothing的jon就在小恶魔的忽悠下对自己的姑姑、爱人、女王下了黑手。实现了自己坑死所有人的心愿~一个敢于牺牲生命来拯救敌人的人,被人三言两语就激起了杀心,一面“you are my queen”,然后将匕首捅进爱人的胸膛。孟德·snow。

5月21日没写完,5-22日更新。

然后,再说中美贸易争端。中美争端不可避免。

阁主觉得,数千年来,人类世界的构成,没有脱离金字塔结构,顶端的依靠低于自身的对其输血。古代统治阶级,依靠的是军队,君权神授来一文一武,对下层进行一级级剥削。而美国,依靠的是坚船利炮和美国主导建立的经济体系以及文化和意识形态输出,对其他国家进行剥削抽脂。

中国的适当发展,美国是乐于见到的;但中国的想达到美国的发展水平,是美国人不愿意见到的。就像地主,家里养一些护院,还需要再养一些长工。没有长工,谁来给地主干活呢?地主老爷嘛,工作是不可能的,这辈子都不可能的。那就只有长工来干喽。长工要干活,就得给他饭吃,不吃饭,没力气,也就不出活。但是呢,又不能让长工吃得太饱,长得太壮实。长工之间,还必须不能是一条心,不然,哪天长工之间串通一气,革了自己的命,抄了自己的家可咋整。来观全球各地的各种国家或者民族或者地区争端,美利坚人民都要热情的插上一脚,扒开大门,挤进去。朝韩、中日、中韩、两岸、南海、中东……,世界警察的身影随处可见,只是为了把一汪水搅浑好坐享其成,渔翁得利。而中国人民,也绝不甘心永远为他人做嫁衣,也都想要自己的生活富足。这几乎是双方不可调和的矛盾。

特朗普要么成为千古一帝,要么遗臭万年。个人感觉,特朗普大搞退群,贸易战,制造业回流,是意识到了美国在这些方面的风险。

再来说能源。阁主觉得,人类的发簪历程,就是利用,转化能源的手段进步的过程。我们用人力、畜力、水力,再到蒸汽、内燃、风力、水力,再到核能、太阳能,无一不是在提高能源的利用率和利用量,减少能源的使用成本。所以,人类最终还是感谢太阳吧。

说回中美贸易争端,经济就是人心。我们对自己有信心,对同胞有信心,才能取得胜利,砸开锁链。对自身的信心,要求我们要能够正视自己的不足,并有信心补足;对同胞的信心,要求我们通力合作,共克时艰。

软件推荐——微力同步(verysync)

多年前,金山推出了一款网盘,名叫“金山快盘”,阁主用它来做办公文档的备份和同步,直到2016年八月,金山关闭了快盘的个人服务。令人非常遗憾。

快盘停止服务后,阁主先后尝试了百度云同步盘,seafile,resilio sync等,使用起来各有不便。

对计算机略有了解的阁主,知道把鸡蛋放在一个篮子中的隐患。所以阁主需要对办公文档进行自动备份和同步。当年金山快盘还没关闭的时候,使用金山快盘是很方便的。

百度云同步:客户端长期未更新,同步效果不理想,速度慢。

seafile:需要架设服务器。而且windows服务端不再更新,文件存储为加密块,要使用专用客户端。

resilio sync:同步速度快,阁主也曾长期使用,不足就是互联网传输容易掉速度,而且免费版本不支持多版本备份。

前段时间,阁主购买了一台矿渣(二手小电脑),有四个可抽取硬盘位,非常适合自己DIY一台NAS。于是,阁主装了黑群晖,使用起来还挺方便的。PC机终于可以适当的休息一下了。

然而,当阁主想在NAS中使用Resilio sync来做同步的时候,却遇到了无法同步的问题。

Resilio sync在互联网同步的时候,需要连接中继服务器,但他的服务器都在国外,由于国内的互联网现状,中继服务器基本上处于无法连接的状态。

于是,阁主想起了之前在使用Resilio sync时候了解到的微力同步(Verysync)。经过实验,微力同步能够很好的满足阁主的现在需求。

分享一些VBA例程

 

计算机应用——未经处理的异常 char

阁主在尝试抄书上的代码时,遇到一个错误,困扰了好久,现在写出来,方便有同样境遇的同志们。

阁主用的是visual studio 2017 ,书上的例子是throw一个字符串,然后catch住并回显。但是在阁主码出来实验的时候出了问题。

代码如下:

经过多次测试及搜索,终于找到问题的解决办法。可行代码如下:

或者

 

Excel应用——生成二维码

现在,二维码应用的越来越普遍了。很多时候,我们都需要生成二维码。而在Office家族中,我们可以通过VBA里的barcodectrl控件来生成条码和二维码。但是遇到中文字符的情况下,barcodectrl控件生成的效果就不理想了。

经过搜索,发现是因为excel中使用的编码解码后不支持中文,所以,阁主转向了zxing的怀抱。zxing是一个基于java语言的开源二维码/条码生成和识别库。已经有大牛将其封装为.net可用的形式zxing.net 版。阁主基于zxing.net库编写了一个excel生成二维码的加载项。

链接: https://pan.baidu.com/s/1TzaWjwKlHAjYEDKOcgS-fw 提取码: q2xu

本站小水管:excelQRcode_1.0.0.5