Excel VBA代码 亲测可用

  • 格式:docx
  • 大小:14.16 KB
  • 文档页数:3

1、打开显示登录窗体代码

打开隐藏表格,显示登录窗体

private Sub Workbook_open()

Application.Visible = false

UserForm1.Show

end Sub

2、固定账号、密码登录窗体设置

(1)制作窗体

(2)登录验证

Private Sub CommandButton1_Click()

If TextBox1 = "admin" Then

If TextBox2 <> 123 Then

MsgBox "密码错误"

Exit Sub

Else

MsgBox "登录成功”"

Unload Me

Application.Visible = True

Sheet1.Activate

End If

Else

MsgBox "账号不存在"

End If

End Sub

(3)退出按钮

Private Sub CommandButton2_Click()

Unload Me

ThisWorkbook.Close

End Sub

(4)打开注册窗体

Private Sub CommandButton3_Click()

UserForm2.Show

End Sub

(5)唯一关闭代码

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)

If CloseMode <> 1 Then Cancel = True

End Sub

3、注册账号

(1)制作注册账号窗体

(2)注册代码

Private Sub CommandButton1_Click()

Dim zh As Range, zt As Range

If TextBox1 = "" Then MsgBox "未填入账户": Exit Sub

If TextBox2 <> TextBox3 Then MsgBox "密码不一致": Exit Sub

Set zh = Sheets("注册").Range("a:a").Find(TextBox1.Text, , , 1)

If zh Is Nothing Then

Set zt = Sheets("注册").Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)

zt = TextBox1.Text

zt.Offset(0, 1) = TextBox2.Text

zt.Offset(0, 2) = Now

MsgBox "注册成功"

Unload Me

Else

MsgBox "账号已经存在,请更换其他账号"

End If

End Sub

4、查找筛选代码

Private Sub TextBox1_Change()

If Len(TextBox1.Value) = 0 Then

Sheet1.AutoFilterMode = False

Else

If Sheet1.AutoFilterMode = True Then

Sheet1.AutoFilterMode = False

End If

Sheet1.Range("B7:P" & Rows.Count).AutoFilter _

field:=4, Criteria1:="*" & TextBox1.Value & "*"

End If

End Sub

5、多账号密码验证代码

Private Sub CommandButton1_Click()

If Len(TextBox1) = 0 Then MsgBox "未输入账号": Exit Sub

Dim zh As Range

Set zh = Sheets("注册").Range("a:a").Find(TextBox1.Text, , , 1)

If Not zh Is Nothing Then

If TextBox2.Text <> zh.Offset(0, 1) Then

MsgBox "密码错误"

Exit Sub

Else

MsgBox "登录成功"

Unload Me

Application.Visible = True

Sheet1.Activate

End If

Else

MsgBox "账号不存在"

End If

End Sub

6、默认打开第一个工作表

Private Sub Workbook_Open()

Sheet1.Activate

End Sub

7、退出保存工作表

Private Sub Workbook_BeforeClose(Cancel As Boolean)

ThisWorkbook.Save

End Sub