Vba 不同用户的单独Excel用户表单标签

Vba 不同用户的单独Excel用户表单标签,vba,excel,user-controls,userform,Vba,Excel,User Controls,Userform,我在工作表中有数据,这些数据是用户注册到其选择的访问类型(学生或教授)时生成的。我有两个用户表单(frmStudent和frmProfessor)。我的问题是,如何在用户登录时更改用户表单的标题(姓名、课程/部门、性别) 示例:user123登录时,frmStudent显示,工作表中列出的相应姓名、课程和性别显示在其用户表单的标签中。(frmStudent.lblname.caption将更改为“Bogart MAgnifico”,课程和性别也会更改。)或者如果user456登录frmProfe

我在工作表中有数据,这些数据是用户注册到其选择的访问类型(学生或教授)时生成的。我有两个用户表单(frmStudent和frmProfessor)。我的问题是,如何在用户登录时更改用户表单的标题(姓名、课程/部门、性别)

示例:user123登录时,frmStudent显示,工作表中列出的相应姓名、课程和性别显示在其用户表单的标签中。(frmStudent.lblname.caption将更改为“Bogart MAgnifico”,课程和性别也会更改。)或者如果user456登录frmProfessor,则显示并使用标签

另外,在他们注册期间,我让他们使用两个选项按钮选择他们想要的访问类型。我尝试过使用一个循环(我用它作为frmLogin,检查用户名和密码是否正确),但我似乎无法让它工作

显示代码可能会有所帮助。
请考虑我的问题,因为我是VBA的新手。

< P>在我的虚拟练习册中,我创造了这些东西:

  • 在“Sheet1”中:第1行-2个用户的登录名;其他2行- 他们的名字和姓氏

  • 该按钮与此子系统关联:

  • 请给我们看看你到目前为止的密码先生。。。如果我同意你的建议,那就意味着每次用户注册时我都必须做出这样的有条件声明。。。那将是乏味的。。。我希望发生的是,对于每个注册的用户。。。当为每个新注册的用户启动userform时,代码会自动运行……不要使用我的建议。在此基础上再接再厉!您的主要问题是:“我的问题是,如何在用户登录时更改用户表单的标题(姓名、课程/部门、性别)。”因此,我向您展示了如何根据登录的用户在同一用户表单(UserForm2)上设置不同的标签和用户表单标题。 Sub Excel_login() UserForm1.Show End Sub Private Sub CommandButton1_Click() Dim ws As Worksheet Set ws = ThisWorkbook.Worksheets("Sheet1") Select Case Me.TextBox1.Text Case ws.Range("A1").Value 'userABC UserForm2.Caption = ws.Range("A1").Value UserForm2.Label2.Caption = ws.Range("A2").Value UserForm2.Label3.Caption = ws.Range("A3").Value Me.Hide UserForm2.Show Case ws.Range("B1").Value 'userDEF UserForm2.Caption = ws.Range("B1").Value UserForm2.Label2.Caption = ws.Range("B2").Value UserForm2.Label3.Caption = ws.Range("B3").Value Me.Hide UserForm2.Show Case Else MsgBox "Incorrect username." Me.Hide Exit Sub End Select Set ws = Nothing End Sub
    Dim i as long
    For i = 1 To ws.UsedRange.Columns.Count
        If ws.Cells(1, i).Value = Me.TextBox1.Text Then
            UserForm2.Caption = ws.Cells(1, i).Value
            UserForm2.Label2.Caption = ws.Cells(2, i).Value
            UserForm2.Label3.Caption = ws.Cells(3, i).Value
            Me.Hide
            UserForm2.Show
        Exit For
        End If
    Next