Anzeige
Archiv - Navigation
1676to1680
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Prüfung Wert in Spalte
02.03.2019 17:52:06
Peter
Hallo ihr Excelspezialisten,
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

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Prüfung Wert in Spalte
02.03.2019 18:08:38
Hajo_Zi
Hallo Peter,
warum nicht find ist schneller.
Set Rafound1 = Columns(1).Find(Textbox1, Range("A" & Rows.Count), xlFormulas, _
xlWhole, , xlNext)
If Not Rafound Is Nothing Then
MsgBox Rafound.Row

Beiträge von Werner, Luc, robert, J.O.Maximo und folgende lese ich nicht.
Die Beiträge werden auch ignoriert, es erfolgt keine Antwort.
AW: Prüfung Wert in Spalte
02.03.2019 18:45:24
Peter
Hallo Hajo,
passt einwandfrei- damit kann ich arbeiten.
Besten Dank
Gruss
Peter
AW: Prüfung Wert in Spalte
03.03.2019 10:52:23
Peter
Hallo Hajo,
ich habe Deinen Vorschlag wie folgt geändert:
<pre>Sub Prüfung_Hajo()
Dim Rafound1 As Object
Set Rafound1 = Worksheets("Buchen_333 333 33").Columns(17).Find("test6", Range("Q" & Rows.Count), xlFormulas, _
xlWhole, , xlNext)
If Not Rafound1 Is Nothing Then
MsgBox "Wert gefunden"
ElseIf Rafound1 Is Nothing Then
MsgBox "nicht gefunden"
End If
End Sub</pre>
Wenn die Spalte Q die Werte enthält dann funktionert es einwandfrei. Da aber diese Werte per Formel in die Zellen eingetragen werden funktioniert das leider nicht.
Die Formel ist von Q2-Q999 eingetragen.
Was muss bitte geändert werden, dass der Code funktioniert.
Besten Dank
Gruss
Peter
Anzeige
AW: Prüfung Wert in Spalte
03.03.2019 11:09:07
Hajo_Zi
Hallo Peter,
Dazu kann ich nichts schreiben, was wohl daran liegt das ich nicht auf fremde Rechner schaue und ich baue keine Datei nach.
Gruß Hajo
AW: Prüfung Wert in Spalte
03.03.2019 11:12:53
Peter
Hallo Hajo,
Du sollst ja keine Datei nachschreiben.
Der von Dir angegebene Weg funktioniert, wenn in der Zelle ein Wert ohne Formel steht. Wird aber der Wert mittels Formel eingefügt funktioniert er nicht.
Das muss für Dich doch eine Kleinigkeit sein hierfür eine Lösung zu finden ohne dass Du eine Datei hast.
Gruss
Peter
AW: Prüfung Wert in Spalte
03.03.2019 13:31:25
Hajo_Zi
Hallo Peter,
Option Explicit
Sub find()
Dim Rafound As Range
Set Rafound = Columns(1).find(14, Range("A" & Rows.Count), xlValues, _
xlWhole, , xlNext)
If Not Rafound Is Nothing Then
MsgBox Rafound.Row
End If
End Sub
Gruß Hajo
Anzeige
AW: Prüfung Wert in Spalte
03.03.2019 11:28:19
Peter
Hallo Hajo,
Du brauchst Dich nicht mehr zu bemühen. Ich habe die Lösung gefunden.
<pre>Sub xxx2()
Dim rSuche As Range
Set rSuche = Worksheets("Buchen_333 333 33").Columns(17).Find(What:="test6", lookAt:=xlWhole, LookIn:=xlValues)
If Not rSuche Is Nothing Then
MsgBox "Wert gefunden"
Else
MsgBox "nicht gefunden"
End If
End Sub</pre>
Gruss
Peter

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige