【Python3+VBA】在Excel中生成小姐姐
本文转载至知乎ID:Charles(白露未晞)知乎个人专栏
下载W3Cschool手机App,0基础随时随地学编程>>戳此了解
视频预览
导语
利用简单的Python和VBA程序在Excel中生成小姐姐。
感觉很有趣,让我们愉快地开始吧~~~
相关文件
关注微信公众号“Charles的皮卡丘”回复‘小姐姐’获取。
开发工具
Python版本:3.6.4
相关模块:PIL模块;openpyxl模块;以及一些Python自带的模块。
Excel版本:Excel2016。
环境搭建
安装Python并添加到环境变量,pip安装需要的相关模块即可。
实现过程
Step1:
利用Python将小姐姐照片上各像素的RGB信息(随机)输出到Excel文件的Sheet2中。
注意照片不宜过大,否则不利于后续操作。
实现方式:
在cmd窗口运行"Gen_Excel.py"文件(或者直接双击运行"Gen_Excel.exe"文件),并根据提示输入小姐姐照片的路径即可:
Step2:
读取Sheet2中的像素值信息并填充到Sheet1中。
实现方式:
打开Step1中生成的Excel文件(默认文件名为"test.xlsx"),按下"Alt+F11"打开VB编辑器后新建一个模块:
将相关文件中提供的"VBA.txt"文件里的第一段代码复制进模块:
同时,为了使Excel文件打开后自动生成小姐姐的图片,设置一下Workbook_open事件,即将"VBA.txt"文件里的第二段代码复制到"ThisWorkbook"中:
最后,将该".xlsx"格式的excel文件(默认为"test.xlsx")另存为".xlsm"格式的excel文件以保证宏正常运行:
Step3:
打开".xlsm"格式的excel文件,可以发现最终的结果是这样子的:
而原图是这样子的:
因此我们需要调整一下图片所在单元格的列宽、行高和页面缩放级别使其长宽比与原图一致(网上淘的图,所以质量差了点):
最后隐藏一下Sheet2以免露馅:
OK,大功告成!!!
关闭".xlsm"格式的excel文件后重新打开即可获得文章开头视频中的效果~
更多
更多
相关文件里有打包好的exe文件,所以环境搭建一步是可以略去的~~~
图片可以是任意的小姐姐、小哥哥以及一些萌萌的小动物等等~~~
更多建议: