各位老铁们。如何设置用户登录界面。
access吧
全部回复
仅看楼主
level 5
想通过建一个用户表:包括用户名和密码。然后创建一个用户登录界面,通过vba代码调用用户表信息。
2017年08月13日 03点08分 1
吧务
level 13
先做界面。再写代码。
2017年08月14日 02点08分 2
界面做好了,代码如何写,请指教
2017年08月14日 04点08分
用户表建好了,窗体也建好了,代码不知道怎么写?
2017年08月14日 04点08分
@阿斌哥prince Office中国论坛 搜索 登录 就有很多实例。 我在这里给你代码也没用,你自己一点都不懂的话也改不了
2017年08月15日 02点08分
@你牛😄算了 好的,了解。谢了
2017年08月15日 04点08分
level 12
用dlookup函数
2017年08月14日 06点08分 3
level 5
根据后台用户表进行登录界面的控制是ACCESS的基本功,很简单。
给你看一下我做的例子,这个例子有很多复杂的东西,我把它们简化后给你参考吧,
假设:
后台有一个sysusetable表,是用户表,有用户账号(account)和密码(accpass)
登录界面有一个填帐号控件useraccount和密码控件userpass,和一个登录按钮,
在按钮的Click事件中写以下这些:
Private Sub CMD01_Click()
'主界面登录按钮
Dim rst As DAO.Recordset
Dim dbs As DAO.Database
Set dbs = CurrentDb
If Trim(Me!useraccount = "") Or IsNull(Me!useraccount) Then
MsgBox ("请输入用户帐号。")
Me!useraccount.SetFocus
Set rst = Nothing
Set dbs = Nothing
Exit Sub
ElseIf Me!userpass = "" Or IsNull(Me!userpass) Then
MsgBox ("请输入用户密码。")
Me!userpass.SetFocus
Set rst = Nothing
Set dbs = Nothing
Exit Sub
Else
’关键语句:
Set rst = dbs.OpenRecordset("select * from sysusetable where trim(account)='" & Trim(Me!useraccount) & "'", dbOpenSnapshot)
If rst.RecordCount = 0 Then
MsgBox ("该用户未注册,请重新输入用户帐号。")
Me!useraccount.SetFocus
Set rst = Nothing
Set dbs = Nothing
Exit Sub
End If
rst.MoveFirst
If Trim(rst.Fields("accpass")) <> Trim(Me!userpass) Then
MsgBox ("该用户密码错误!请重新输入密码。")
Me!userpass.SetFocus
Set rst = Nothing
Set dbs = Nothing
Exit Sub
Else
'登录并切换成主步骤界面
'这里可以写一些成功登录的东东,比果显示“进入系统”按钮,或直接打开第二个主界面等等,
Me.cmd03.SetFocus
Me.cmd02.Visible = True
Me.cmd03.Visible = True
'另外再送你个小功能:一般前况下,我们需要记录当前成功登录者以后打开的每一个界面和操作,那么,可以在主登录窗体页脚处设几个隐藏的控件来传递这些参数,其它窗体也设置相同控件来接收,如:
'登录成功能设置隐含传导字段
Me.opername = rst.Fields("opername") '操作者姓名
Me.operrank = rst.Fields("accrank") '操作者级别
Me.opergroup = rst.Fields("accgroup") '操作者组别
End If
End If
Set rst = Nothing
Set dbs = Nothing
End Sub
2017年08月15日 05点08分 4
1