前景提要
上一节我们学习了Excel VBA的登录窗体多用户名的展示
通过上一节的学习,我们也是学习了一些简单的窗体控件,比方说复合框选项卡, 他是我们上一节构造下拉列表样式的核心控件
今天我们继续深化一下这个登录窗体
今天我们要实现的就是针对用户名的增加和修改密码
这里我们先增加两个按钮
场景说明
我们看到,现在我们已经在登录窗体上,新增加了两个按钮,一个是新建用户名,一个是修改用户名的密码
那我们来在这个逻辑上写代码
首先,我们都知道,之前的用户名我们都是单独保存在一个叫做“用户名”的工作表中的,那么新建用户名的操作,无非就是将新的用户名,写入到这个工作表中即可。
修改密码,那就更简单了,就是通过代码来实现密码那一列的对应的账号密码的修改,说的那么简单,那直接上代码吧
代码区
为了展示的效果,这里我们在新建一个窗体,作为新建用户名的窗体
界面也是非常的简单,一个用户名,一个密码,再加上一个提交按钮就可以了。
至于代码嘛,我们来看看
Private Sub CommandButton1_Click()
Dim sth As Worksheet
Set sth = ActiveWorkbook.Worksheets("用户名")
l = sth.Cells(Rows.Count, 1).End(xlUp).Row
Cells(l + 1, 1) = TextBox1.Value
Cells(l + 1, 2) = TextBox2.Value
UserForm2.Hide
UserForm1.Show
End Sub其实代码很简单,获取用户名这个工作表的最大下标之后,就可以写入了,我们来看看动图效果
可以看到成功的添加了新的用户名和密码,然后重启登录窗体之后,新的用户名和密码也是能够体现在我们上一节创建的复合框中
nice
下一个,我们来实现针对用户名密码的修改
我们还是创建一个新的窗体
好,上代码
Private Sub CommandButton1_Click()
Dim sth As Worksheet, rng As Range
Set sth = ActiveWorkbook.Worksheets("用户名")
l = sth.Cells(Rows.Count, 1).End(xlUp).Row
s = TextBox1.Value
With sth.UsedRange
Set rng = .Find(what:=s, searchformat:=True)
If Not rng Is Nothing Then
rng.Offset(0, 1) = TextBox2.Value
UserForm3.Hide
Else
MsgBox "用户名不存在,请重新输入!"
UserForm3.Show