Clever-Excel-Forum

Normale Version: Vergleich von TextBox und Tabelle
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,

hab mal wieder ein Schlauch vorm Kopf und steh auf nem Brett...

bei nachfolgendem Code möchte ich die Eingabe aus dem UserForm6 TextBox1 die Eingabe einlesen und mit einer intelligenten Tabelle (Spalte Benutzer) vergleichen...
bei der If-Abfrage bekomme ich die Fehlermeldung, dass die Objektvariable nicht festgelegt ist (Laufzeitfehler 91)...
Gebe ich einen existierenden Benutzer ein, so sagt er mir richtig, dass der Benutzer schon existiert...
Gebe ich dann einen neuen Namen ein, kommt der Fehler...


Dim tabrng As String
Dim tabbox As Range
Dim tbl As ListObject
Set tbl = Tabelle7.ListObjects(1)
Dim Zeile As Long

tabrng = UserForm6.TextBox1.Value
Set tabbox = Range("tblZugriff[Benutzer]").Find(What:=tabrng, LookAt:=xlWhole)

If tabrng = tabbox Then

    MsgBox "Dieser Benutzer existiert bereits!"
    UserForm6.TextBox1.Value = ""
    UserForm6.TextBox2.Value = ""
    UserForm6.TextBox3.Value = ""
    UserForm6.TextBox1.SetFocus
    Exit Sub
   
Else:

    tbl.ListRows.Add
    Zeile = tbl.DataBodyRange.Rows.Count
   
    tbl.DataBodyRange(Zeile, 1).Value = UserForm6.TextBox1.Value
    tbl.DataBodyRange(Zeile, 2).Value = UserForm6.TextBox2.Value
    tbl.DataBodyRange(Zeile, 3).Value = "Benutzer"
   
End If
Unload UserForm6
           
End Sub

Wie kann ich Schlauch und Brett loswerden?

Danke euch schonmal....
Hallo,

Code:
Sub aaa()
  Dim tbl As ListObject
  Set tbl = Tabelle7.ListObjects("tblZugriff")
  If Not tbl.ListColumns("Benutzer").DataBodyRange.Find(What:=TextBox1.Value, LookAt:=xlWhole) Is Nothing Then
      MsgBox "Dieser Benutzer existiert bereits!"
      TextBox1.Value = ""
      TextBox2.Value = ""
      TextBox3.Value = ""
      TextBox1.SetFocus
  Else
      With tbl.ListRows.Add.Range
         .Cells(1).Value = TextBox1.Value
         .Cells(2).Value = TextBox2.Value
         .Cells(3).Value = "Benutzer"
      End With
      Unload Me
  End If
End Sub

Gruß, Uwe
Vielen herzlichen Dank, Uwe :)

anscheinend wollte ich es zu einfach haben in meiner Überlegung....

das funktioniert perfekt :)

danke nochmals und ein schönes Wochenende....welches bei mir nun gerettet ist, da ich weiter komme :)

Thumbsupsmileyanim Thumbsupsmileyanim Thumbsupsmileyanim