在日常办公场景中,我们时常会发送Excel文件给别人,同时也会时常收到他人发送的 Excel文件。有时候当我们收到的Excel文件时,往往会先弹出一个欢迎界面,待该界面自动关闭后,Excel 中的数据内容才会完整呈现。
如下方展示的图片,即为打开Excel 文件后弹出的欢迎界面示例。
那么,这类欢迎界面具体是如何制作的呢?
我们需要先理一下思路:
1)首先插入一个用户窗体,使用预先设计好的欢迎界面图片;
2)调用窗体是一个工作簿事件,我们需要达到的效果是,欢迎界面覆盖了整个Excel界面,且该欢迎界面显示3秒后自动消失;
3)这个自动消失我们是通过调用模块中的欢迎界面结束过程来实现的,也就是说3秒后不再加载欢迎界面,同时显示Excel界面。
工作簿事件:
Private Sub Workbook_Open() Application.Visible = False UserForm1.Show 0 Application.OnTime Now + TimeValue("00:00:03"), "finish"End Sub
欢迎界面结束过程:
Sub finish() Unload UserForm1 Application.Visible = TrueEnd Sub
我们可以用一张图来说明其逻辑关系:
代码解释:
UserForm1是你在 VBA 中创建的用户窗体名称,UserForm1.Show会直接弹出这个用户窗体,后面加个0表示窗体显示后,下面的代码会立即执行,且可以操作Excel界面;如果是1的话,则Excel 界面完全被锁定,无法点击任何单元格或菜单,通常适用于登录窗体或数据录入窗体。
Application.OnTime方法是VBA里的“定时任务”工具,核心是让程序在指定的时间点自动执行某个宏。
它有两个必选参数,一个是指定宏开始执行的时间,如“Now + TimeValue("00:00:03")”,一个是要执行的宏名称,如“finish”。
Unload UserForm1的核心作用是彻底关闭并卸载名为 UserForm1 的用户窗体,释放该窗体及其所有控件占用的内存资源。
简单来说,执行该行代码后,窗体不仅会从屏幕上消失,还会被从内存中清除 —— 窗体里的所有控件的值都会被清空,窗体的状态也会被重置。
今天的分享就到这儿啦,非常感谢您对“Python SQL审天下”公众号的关注和点赞。如果您觉得我的公众号能给您带来一丝丝的收获,请多多转发给您的朋友圈,让更多的人看到并了解。也许您不经意间的点赞和转发,会给他人带来独特的体验和感受。