Excel VBA 5.28 新番 灵活增加用户名 玩转登录窗体

一起学习,一起进步~~

前景提要

上一节我们学习了Excel VBA的登录窗体多用户名的展示

通过上一节的学习,我们也是学习了一些简单的窗体控件,比方说复合框选项卡, 他是我们上一节构造下拉列表样式的核心控件

今天我们继续深化一下这个登录窗体

今天我们要实现的就是针对用户名的增加和修改密码

这里我们先增加两个按钮

场景说明

我们看到,现在我们已经在登录窗体上,新增加了两个按钮,一个是新建用户名,一个是修改用户名的密码

那我们来在这个逻辑上写代码

首先,我们都知道,之前的用户名我们都是单独保存在一个叫做“用户名”的工作表中的,那么新建用户名的操作,无非就是将新的用户名,写入到这个工作表中即可。

修改密码,那就更简单了,就是通过代码来实现密码那一列的对应的账号密码的修改,说的那么简单,那直接上代码吧

代码区

为了展示的效果,这里我们在新建一个窗体,作为新建用户名的窗体

界面也是非常的简单,一个用户名,一个密码,再加上一个提交按钮就可以了。

至于代码嘛,我们来看看

Private Sub CommandButton1_Click()Dim sth As WorksheetSet sth = ActiveWorkbook.Worksheets("用户名")l = sth.Cells(Rows.Count, 1).End(xlUp).RowCells(l + 1, 1) = TextBox1.ValueCells(l + 1, 2) = TextBox2.ValueUserForm2.HideUserForm1.ShowEnd Sub

其实代码很简单,获取用户名这个工作表的最大下标之后,就可以写入了,我们来看看动图效果

可以看到成功的添加了新的用户名和密码,然后重启登录窗体之后,新的用户名和密码也是能够体现在我们上一节创建的复合框中

nice

下一个,我们来实现针对用户名密码的修改

我们还是创建一个新的窗体

好,上代码

Private Sub CommandButton1_Click()Dim sth As Worksheet, rng As RangeSet sth = ActiveWorkbook.Worksheets("用户名")l = sth.Cells(Rows.Count, 1).End(xlUp).Rows = TextBox1.ValueWith 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 End IfEnd WithEnd Sub

代码虽然是稍微多了一点,但是其实还是很简单,利用了我们之前学习过的单元格的查找功能,找到对应的用户名所在的位置

如果存在,即将他隔壁的单元格内容修改为新的密码

如果不存在,就告诉你输入错误,同时窗体重新展示,让你再次输入

成功的修改了对应的用户名的密码

是不是很赞呀

(0)

相关推荐