【分享成果,随喜正能量】人生在世,谁都不易,生活在外,谁都有泪。即使身受挫折,蒙受不白,也不要轻易放弃。就算人受伤害,心受打击,也不要刻意报复。因为,放弃意味着屈服,报复说明还在嫉恨。生活不是用来对立的,人生不是用来争斗的。将心比心,都能想通,以情换情,谁也明白。要懂得理解才能心安,包容才会心宽。
《VBA之EXCEL应用》是非常经典的,是我推出的第七套教程,定位于初级。这套教程从简单的录制宏开始讲解,一直到窗体的搭建,内容丰富,实例众多。大家可以非常容易的掌握相关的知识,这套教程共三册,十七章,都是我们在利用EXCEL工作过程中需要掌握的知识点,希望大家能掌握利用。今日讲解的内容是“VBA之EXCEL应用”的第十六章“用户窗体(Userform)对象”的第4节:打开工作薄时只显示窗体及窗体快捷键的设置
第四节 打开工作薄时只显示窗体及窗体快捷键的设置
大家好,我们这节讲解一个窗体应用的实例,在这个实例中会利用VBA代码实现在打开一个工作薄时,工作薄会隐藏,而只显示这个工作簿中的一个窗体。如果大家进一步开发可以让用户在这个窗体上录入密码,如果密码正确,才可以让工作簿显示。
1 实现打开工作薄时只显示窗体的代码及代码解读由于实现这个目的的思路比较简单,就不再进行思路的讲解,我们看代码的搭建部分,由于进入工作簿后只显示窗体,我们无法进行后续的测试及进入VBE窗口,我们先在窗体上增加一个按钮:
并设置按钮的caption属性为“显示工作簿”:
双击这个控件,进入代码界面,在Click事件中加入下面代码:
Private Sub CommandButton1_Click()
Application.Visible = True
End Sub
代码截图:
代码解读:此处的代码让我们在只显示窗体的界面条件下可以进入工作簿,同时大家要注意屏蔽原有代码中关闭工作簿时不保存退出代码,如下:
我们双击thisworkbook,在工作簿的open事件中写入下面的代码:
Private Sub Workbook_Open()
Application.Visible = False
UserForm1.Show
End Sub
代码截图:
代码解读:
上述代码在工作簿打开时会让工作簿的Visible属性设置为FALSE,即不可见。同时显示窗体UserForm1.
2 实现打开工作薄时只显示窗体的代码运行先关闭上述工作簿,再次打开,就只显示下面的界面了:
点击显示工作簿:
这个时候就显示了工作簿了。这个小程序是非常有用的,大家在实践过程中慢慢体会。
3 OnKey方法介绍这个方法是指当按特定键或特定的组合键时运行指定的过程。
语法:expression.OnKey(Key、Procedure)
expression:表示 Application 对象的变量。
参数讲解:
Key 必需 字符串 表示要按的键的字符串。
Procedure 可选 Variant 表示要运行的过程名称的字符串。 如果 Procedure 为空文本 (""),则按Key时不发生任何操作。该格式的 OnKey 将更改键击在 Microsoft Excel 中产生的正常结果。
- 如果省略 Procedure 参数,则 Key 恢复为 Microsoft Excel 中的正常结果,同时清除先前使用 OnKey 方法所做的特殊键击设置。
- Key参数可以指定与 Alt、Ctrl 或 Shift 或这些键的任意组合组合在一起的任意单个键。 每个键均可用一个或多个字符表示,例如,a 表示字符 a,{ENTER} 表示 Enter 键。
- 若要指定在按下相应的键 (例如: Enter 或 Tab) 时不显示的字符, 请使用下表中列出的代码。 表中的每个代码表示键盘上的一个键。
代码截图:
代码讲解:
以上代码表示在按下f2键时将执行mynz这个过程。
接下来即可F2快捷键就可以调出窗体UserForm1。
- 快捷键如与系统原快捷键功能冲突,快捷键执行代码指定功能。
代码的运行:(略)
今日内容回向:
1) 在打开工作薄时如何只显示窗体?
2) 如何给窗体设置快捷键?
,