如何用EXCEL制作登录界面
本期作品分享用EXCEL制作一个登录界面,并且登录后根据不同的用户名获取不同的权限。方便我们在工作中分享工作表时能够将指定的内容进行隐藏。本期讲解内容以最近发布的作品《生产计划管理系统》为例进行讲解。
- 用户窗体的插入
1.1 依次点击开发工具—Visual Basic(或使用快捷键Alt+F11)。
1.2 鼠标右键点击空白处依次选择插入—用户窗体
1.3 将鼠标光标放在刚刚插入的窗体右下角,拖动窗体大小到合适尺寸为止。
1.4 选中窗体后点击属性(如下图所示),打开窗体的属性窗口。
1.5 打开属性窗口后按下图方式依次点击“按分类序”、选择“Caption”,将我们新建的窗体命名为“登录界面”。如下图所示。
1.6 插入背景图片:点击属性“picture”位置最后的“…”符号,在弹出的窗口中选择要插入的图片。
1.7 在属性窗口的PictureSizeMode设置背景图片的模式,这里选择“1”。设置好后如下图所示。
- 插入窗体控件
2.1选择窗体后点击如下图所示的工具箱图表,打开窗体控件工具箱。
2.2 选择标签控件后在窗体上拖动。
2.3 更改标签的文字为“用户名”。并在对应属性窗口设置标签文字的字体。
2.4 将标签属性的自动尺寸“AutoSize”设置为“TRUE”
2.5 将标签属性的背景“BackStyle”设置为0,将字体颜色ForeColor设置为baise。如下图所示。
2.6 复制用户名标签,将属性Caption改为“密码”
2.7 选择工具箱的文字框控件,并在窗体对应位置拖动。
2.8 按照上面的方式设置文字框的字体大小,并设置属性窗口的“TextAlign”属性为“2”,让文字框的内容居中显示。
2.9 复制一个文字框到密码位置。将密码输入框的“PasswordChar”属性输入“*”号,这样在输入密码时会以“*”号替代。
2.10 对齐:如下图所示,选中文字框,将文字框对齐,并用同样的方式对齐“用户名”和“密码”标签。
- 命令按钮
3.1如图所示,在工具箱选择命令按钮并在窗体上拖动生成。
3.2 更改命令按钮属性的Caption为登录,并按前面的方式设置字体大小。
3.3 复制登录按钮,并改名为退出,如下图所示。并按前面的方式调整对齐按钮。
3.4 最后增加一个“生产计划管理系统”的标签。如下图所示。
- 输入代码
4.1 退出代码:鼠标双击“退出”按钮,输入如下代码
Private Sub CommandButton2_Click()
Unload Me
ThisWorkbook.Save
ThisWorkbook.Close
End Sub
4.2 登录代码:
4.2.1 首先新建一个用户信息的工作表,并输入下图内容。用于用户名和密码的登录。
4.3 双击“登录”按钮输入如下代码:(下方代码用红色字体注释)
Private Sub CommandButton1_Click()
If TextBox1 = “” Or TextBox2 = “” Then
MsgBox “请先输入用户名和密码!”
Exit Sub
End If
(以上代码为判定用户名和密码框是否输入内容,如果未输入则退出宏并弹窗提醒)
Dim i As Integer
For i = 3 To 10
If Sheet2.Cells(i, 2) = TextBox1 And Sheet2.Cells(i, 3).Value = TextBox2.Value Then
If Sheet2.Cells(i, 4) = “管理员” Then
(判断用户属性是否为“管理员”)
Application.Visible = True
Unload UserForm1
(关闭登录界面)
Sheet2.Visible = True
Sheet3.Visible = True
Sheet4.Visible = True
Sheet1.CommandButton4.Enabled = True
Sheet1.CommandButton5.Enabled = True
Sheet1.CommandButton6.Enabled = True
Sheet1.CommandButton7.Enabled = True
(将所有按键启用并显示所有工作表)
Sheet1.Range(“d3”) = Sheet2.Cells(i, 2)
(将登录用户名显示在主页对应位置)
MsgBox “登录成功!”
Exit Sub
End If
If Sheet2.Cells(i, 4) = “普通用户” Then
(判断用户属性是否为“普通用户”)
Application.Visible = True
Unload UserForm1
(关闭登录界面)
Sheet2.Visible = False
Sheet3.Visible = False
Sheet4.Visible = False
Sheet1.CommandButton4.Enabled = False
Sheet1.CommandButton5.Enabled = False
Sheet1.CommandButton6.Enabled = False
Sheet1.CommandButton7.Enabled = False
(将指定按键禁用并隐藏指定工作表)
Sheet1.Range(“d3”) = Sheet2.Cells(i, 2)
(将登录用户名显示在主页对应位置)
MsgBox “登录成功”
Exit Sub
End If
End If
If Sheet2.Cells(i, 2) = TextBox1 And Sheet2.Cells(i, 3) <> TextBox2 Then
MsgBox “密码错误”
TextBox2.Value = “”
End If
Next
(判断用户名和密码是否一致,不一致弹窗提醒)
End Sub
4.4 将以上代码都写好后,接下来的工作就是如何实现我们打开EXCEL文件时自动显示登录界面。
首先鼠标双击Thisworkbook,并输入一下代码,如下图所示。这样在我们打开EXCEL文件时就能自动弹出登录界面。
Private Sub Workbook_Open()
Application.Visible = False
UserForm1.Show
End Sub
4.5 禁用“X”关闭功能。最后一步便是禁用点击登录界面右上角的“X”号关闭,只能使用“退出按钮关闭工作簿。”
4.5.1 双击窗体,打开窗体代码窗口,输入如下代码。如下图所示,这样便可禁用窗体右上角的“关闭”功能。
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
If CloseMode <> 1 Then Cancel = True
End Sub
结语:本期作品就分享到这里,由于时间关系有些地方未能细讲还请谅解。如制作过程中存在疑问可在评论区留言或私信小编。