ich habe ein Makro mit welchem ich prüfe, ob ein bestimmter Wert in Textbox in einer Spalte vorhanden ist.
Wenn dieser gefunden wurde soll das Makro beendet werden mit Meldung "Wert gefunden" in Label6
wenn der Wert nicht gefunden wurde soll das Makro ausgeführt werden ab der Zeile
Application.EnableEvents = False
<pre>Private Sub CommandButton6_Click()
Dim wb As Workbook
Dim ws As Worksheet
Dim suWert As String
Dim i As Long
Set wb = ThisWorkbook
Set ws = wb.Worksheets("Buchen_" & TextBox4)
suWert = TextBox5
For i = 2 To 65536
If ws.Cells(i, 17) = suWert Then '17=SpalteQ
'' MsgBox "Wert gefunden, Textbox5 löschen"
TextBox5 = ""
OptionButton1 = False
OptionButton2 = False
CommandButton6.Enabled = False
'Anfang Information
Label6.Visible = True
Label6.Caption = "Kategorie geprüft- bereits benutzt - kann nicht geändert werden!"
Label6.Font.Size = 12
'Ende Information
Exit For ' oder ohne Exit For, dann wird das jedesmal ausgeführt.
End If
Next i
Application.EnableEvents = False
With ThisWorkbook.Worksheets("Kategorien")
.Cells(CLng(ListBox1.List(ListBox1.ListIndex, 5)), 2).Value = Val(TextBox1.Text)
.Cells(CLng(ListBox1.List(ListBox1.ListIndex, 5)), 3).Value = TextBox2.Text
.Cells(CLng(ListBox1.List(ListBox1.ListIndex, 5)), 4).Value = TextBox3.Text
.Cells(CLng(ListBox1.List(ListBox1.ListIndex, 5)), 5).Value = TextBox4.Text
.Cells(CLng(ListBox1.List(ListBox1.ListIndex, 5)), 6).Value = TextBox5.Text
End With
Application.EnableEvents = True
TextBox1.Text = vbNullString
TextBox2.Text = vbNullString
TextBox3.Text = vbNullString
TextBox4.Text = vbNullString
TextBox5.Text = vbNullString
'Anfang Filter aufheben
With ThisWorkbook.Worksheets("Kategorien")
If .FilterMode Then Call .ShowAllData 'hebt den Filter auf
Selection.AutoFilter 'schaltet Daten - Filter ab
End With
'Ende Filter aufheben
Call ListBox1_fuellen
'Anfang Information
Label6.Visible = True
Label6.Caption = "Eintrag wurde geändert"
Label6.Font.Size = 12
'Ende Information
End Sub</pre>
Könnt ihr mir bitte mitteilen, was geändert werden muss um das Makro richtig durchzuführen.
Besten Dank für eure Hilfe.
Gruss
Peter