Problem mit Application.Match :(
Jaffi
mal wieder ein für mich unlösbares Problem.
Ich möchte eine 15 stellige Zahl per Userform in einer Spalte suchen. Wenn er sie nicht gefunden hat soll er sie eintragen, findet er sie soll er mir das löschen anbieten. In anderen Projekten hab ich das schon zum laufen bekommen. Diesmal hänge ich!!!
Der Code:
Option Explicit
Public lFreieman, manZeile As Long
Public wksi, wksn, wkss, wksc, wkst As Worksheets
Private Sub CommandButton1_Click()
Unload Me
End Sub
Private Sub CommandButton2_Click()
Set wksi = Worksheets("sheet")
If Not IsNumeric(TextBox1.Value) Then
MsgBox "keene Nummer"
Label2.Caption = "ungültig !"
ElseIf Len(TextBox1.Value) 15 Then
Label2.Caption = "ungültig !"
MsgBox "zu kurz oder zu lang!"
ElseIf Not IsError(Application.Match(CLng(TextBox1.Value), wksi.Range("A:A"), 0)) Then // hier _
_
bekomme ich einen Laufzeitfehler 6 - Überlauf
manZeile = (Application.Match(CLng(TextBox1.Value), wksi.Range("A:A"), 0))
MsgBox manZeile
Label2.Caption = "gefunden ! Löschen?"
CommandButton2.Visible = False
CommandButton3.Visible = True
Else
With wksi
lFreieman = .Cells(Rows.Count, 1).End(xlUp).Row + 1
.Cells(lFreieman, 1).Value = TextBox1.Value
Label2.Caption = "Die Daten wurden übernommen !"
End With
End If
End Sub
Private Sub CommandButton3_Click()
wksiphone.Rows(manZeile).Delete Shift:=xlUp
Label2.Caption = "wurde gelöscht !"
TextBox1.Value = ""
CommandButton2.Visible = True
CommandButton3.Visible = False
End Sub
Private Sub TextBox1_Change()
Label2.Caption = ""
CommandButton2.Visible = True
CommandButton3.Visible = False
End Sub
Irgendwie stehe ich auf der Leitung und komme nicht weiter. Tabellenblatt hat nur eine Spalte und soll wie gesagt ich möchte nur eine 15 stellige Ziffer erfassen!! :(
Weis jemand warum ich den o.g. Laufzeitfehler bekomme?
Tausend Dank für jeden Tip!
Grüsse
J.
Anzeige