-3

これは私のコードです PLS ヘルプ

({ユーザー名の表示方法!!})

ユーザー名の代わりにユーザー ID が常に表示されます。コードにミスがあると思います。助けてください。

Option Compare Database

Private Sub BTNCancel_Click()
Dim Ans As String

Ans = MsgBox("Do you want to cancel log-in?", vbYesNo, "Shutdown the system")

If Ans = vbYes Then
DoCmd.Quit

Else
    Exit Sub
End If




End Sub
Private Sub CBOEmployee_AfterUpdate()
'After selecting user name set focus to password field
    Me.TXTPassword.SetFocus
End Sub

Private Sub BTNLogin_Click()

If IsNull(Me.CBOEmployee) Or Me.CBOEmployee = "" Then
    MsgBox "You must Enter a User Name.", vbOKOnly, "Required Data"
    Me.CBOEmployee.SetFocus
    Exit Sub
    End If

   If IsNull(Me.TXTPassword) Or Me.TXTPassword = "" Then
    MsgBox "You must Enter a Password.", vbOKOnly, "Required Data"
    Me.TXTPassword.SetFocus
    Exit Sub
    End If
If Me.TXTPassword.Value = DLookup("UserPassword", "tblUsers", "[UserID] =" & Me.CBOEmployee.Value) Then

UserID = Me.CBOEmployee.Value


DoCmd.Close acForm, "frmLogon"
DoCmd.OpenForm "frmStudSubject"
Else
MsgBox "Password Invalid. Please Try Again", vbOKOnly, "Invalid Entry!"
Me.TXTPassword.SetFocus
End If

intLogonAttempts = intLogonAttempts + 1
If intLogonAttempts > 3 Then
    MsgBox "You are unauthorized to access this system...Please Contact Your  System Administrator.", vbCritical, "Restricted access!"
    Application.Quit
    End If




End Sub
4

1 に答える 1

1

ユーザー名は CBOEmployee に表示されるはずだと思います。代わりに UserId が表示される場合は、そのコントロールの ColumnWidth プロパティに問題があります。

折りたたまれている場合、ComboBox は、ColumnWidth リストでゼロ以外の幅を持つ最初の列のテキストを表示します。

通常、RowSource は、最初の列に何らかの ID を持つレコードセットを返し、2 番目の列に表示するテキストを返します。次に、ColumnWidth プロパティは "0,1.23" のようになります。

于 2013-10-18T11:18:32.750 に答える