我正在开发一个通话记录系统,并且为了跟踪目的,经理希望每个用户在登录时都能登录。通过用户名搜索数据库
我有一个模块,用下面的代码显示当前登录的用户。我希望系统在表格“TBL_Users”中搜索用户名,并在文本框中显示与该用户名相关的所有信息。如果该用户不在数据库中,我需要显示错误并且不允许用户进入系统。我知道我可能需要使用Dlookup,但我不确定如何对其进行编码。
Option Compare Database
Private Declare Function apiGetUserName Lib "advapi32.dll" Alias _
"GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long
Function fOSUserName() As String
' Returns the network login name
Dim lngLen As Long, lngX As Long
Dim strUserName As String
strUserName = String$(254, 0)
lngLen = 255
lngX = apiGetUserName(strUserName, lngLen)
If (lngX > 0) Then
fOSUserName = Left$(strUserName, lngLen - 1)
Else
fOSUserName = vbNullString
End If
End Function
在使用Dlookup玩了一段时间后,我需要文本框来填充表单加载。这是我用过的Dlookup。
Private Sub Form_Load()
Windows_Logontxt = fOSUserName()
'agentname = DLookup("Agent_Name", "TBL_Users", "Windows_Logon=" & Windows_Logontxt)
End Sub
“我知道我可能需要使用Dlookup,但我不确定如何编码。” - *每个人*在第一次尝试某些东西时都不确定,所以不是借口。阅读[this](http://office.microsoft.com/en-ca/access-help/dlookup-function-HA001228825.aspx),然后继续尝试。然后回来编辑你的问题,说:“这是我试图使用'DLookup()'的方法:...”并告诉我们发生了什么事。 –
上面编辑的问题。 – ASM2701