只对管理员可见的“更改用户权限”窗体,可通过单击“用户权限”工作表中的“更改用户权限”按钮调出,这是因为“用户权限”工作表只对管理员是可见的。
创建“更改用户权限”窗体的具体操作步骤如下:
在“用户权限”工作表中添加“更改用户权限”按钮。在“用户权限管理系统”工作簿中打开“用户权限”工作表,如图11-56所示。
选择“开发工具”选项卡,在“控件”组中单击“插入”下拉按钮,在弹出菜单中选择“按钮”控件,返回“用户权限”工作表,待光标变为十字形状时拖动鼠标,即可打开“执行宏”对话框,如图11-57所示。
图11-56 “用户权限”工作表
图11-57 “指定宏”对话框
选择其中的“change”选项,单击“确定”按钮,即可在“用户权限”工作表中看到插入的按钮,右击插入的按钮控件,在弹出菜单中选择“编辑文字”选项,将其名称设置为“更改用户权限”,如图11-58所示。
右击插入的按钮控件,在弹出菜单中选择“设置控件格式”选项,即可打开“设置控件格式”对话框,选择“字体”选项卡,如图11-59所示。
图11-58 插入的按钮
图11-59 “字体”选项卡
在“字体”选项卡的“字体”列表中选择“宋体”;在“字形”列表中选择“加粗”;在“字号”列表中选择“14”;在“颜色”下拉列表中选择相应颜色,单击“确定”按钮返回到“用户权限”工作表,即可看到设置属性后的命令按钮,如图11-60所示。
单击“代码”组中的“VisualBasic”按钮,打开“Microsoft Visual Basic for Application”窗口,选择“插入”→“用户窗体”菜单项,即可创建一个名为“UserForm3”用户窗体。在“属性”对话框中的“Caption”文本框输入“更改用户权限”,即可看到刚创建的窗体的名称已经被设置为“更改用户权限”,如图11-61所示。
图11-60 设置属性后的按钮效果
图11-61 创建“更改用户权限”窗体
在“更改用户权限”窗体上添加标签、命令按钮、复合框等各种控件,如图11-62所示。单击“Label5”标签,在“属性-Label5”对话框中清空“Caption”文本框中的内容,如图11-63所示。
图11-62 在“更改用户权限”窗体添加各种控件
图11-63 清空“Caption”文本框中的内容
在“BorderStyle”下拉列表中选择“1-fmBorderStyleSinge1”选项,按<Enter>键,即可该改标签添加一个边框,如图11-64所示。再为标签Label6添加一个边框并清除其中的文本,如图11-65所示。
在“Microsoft Visual Basic for Application”主窗口左边列表中右击创建的“UserForm3”窗体,在弹出菜单中选择“查看代码”选项,进入“UserForm3代码编辑”窗口,在代码编辑区域的“对象”下拉列表中分别选择“UserForm”选项,在右边的“事件”下拉列表中选择“Activate”选项,即可看到系统自动添加的代码,如图11-66所示。
图11-64 给“Label5”标签添加边框
图11-65 给“Label6”标签添加边框
删除其中的UserForm_Click事件处理程序代码框架,在UserForm_Activate事件代码框架中输入可以显示所有已注册用户的代码,如图11-67所示。
图11-66 系统自动添加的代码
图11-67 UserForm_Activate事件完整代码
UserForm_Activate事件代码完整代码如下:
上述代码的作用是当管理员激活“更改用户权限”窗体时,系统将自动在添加的复合框中加载与其对应的用户名和用户级别信息。
在“Microsoft Visual Basic for Application”主窗口中选择“运行”→“子过程/子窗体”菜单项,在“更改用户权限”窗体的“请输入用户名”下拉列表中看到所有已经注册的用户名,如图11-68所示。而单击“更改用户级别为”下拉列表,即可看到设置的用户级别,如图11-69所示。(www.daowen.com)
图11-68 显示所有已注册用户名
图11-69 显示更改用户级别
双击创建的“请输入用户名”复合框,即可进入其代码编辑窗口,在其中输入该命令按钮的功能代码,以实现自动显示用户名和用户级别,如图11-70所示。
代码如下:
上述代码作用是当复合框ComboBox1复合框发生变化时,将自动在“用户名”和“当前用户级别”标签中显示相应的值。
图11-70 给“请输入用户名”复合框添加代码
图11-71 给“确定”按钮添加代码
双击创建的“确定”按钮,即可进入其代码编辑窗口,在其中输入该命令按钮的功能代码,以实现自动更改用户级别,如图11-71所示。
代码如下:
上述代码的作用是当管理员在“更改用户权限”窗体中没有选择用户或更改用户级别后,系统将自动退出该子过程,否则将自动在“用户权限”工作表中更改该用户的用户级别。
双击创建的“取消”按钮,即可进入其代码编辑窗口,在其中输入该命令按钮的功能代码,以清空显示的信息,如图11-72所示。
代码如下:
上述代码的作用是当管理员在单击“取消”按钮时,系统将会自动将显示的信息清空。
图11-72 给“取消”命令按钮添加代码
图11-73 给“退出”命令按钮添加代码
双击创建的“退出”按钮,即可进入其代码编辑窗口,在其中输入该命令按钮的功能代码,以直接退出“更改用户权限”窗体,如图11-73所示。
代码如下:
上述代码的作用是当管理员在单击“退出”按钮时,系统将自动隐藏“更改用户权限”窗口,即直接退出“更改用户权限”窗口。
为确保用户不登录则不允许进入该工作簿,还可以对上面设计的用户权限管理系统进行设置。在“Microsoft Visual Basic for Application”主窗口中双击“ThisWorkbook”选项,打开其代码编辑窗口,如图11-74所示。
在上面的对象下拉列表中选择“Workbook”选项,此时系统将自动添加一个“Workbook_Open”时间处理程序框架,在其中输入相应代码,以实现当用户打开“用户权限管理系统”工作簿时打开“登录窗口”窗体,如图11-75所示。
代码如下:
图11-74 “ThisWorkbook”代码编辑窗口
图11-75 “Workbook_Open”事件处理程序代码
上述代码的作用是当用户打开“用户权限管理系统”工作簿时,系统自动使该工作簿最小化并显示“登录窗口”窗体。
至此,已经完成了用户权限管理系统的创建过程,为了保证数据的安全性,还需要进行相应的保护操作。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。