Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1904to1908
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
Inhaltsverzeichnis

Prüfung von strings in Range auf Pattern

Prüfung von strings in Range auf Pattern
17.11.2022 15:21:49
strings
Hallo,
ich versuche folgendes Problem zu lösen: In Spalte A stehen (von Zeile 2 bis 4 vor Ende) strings, die nach einem bestimmten Muster aufgebaut sein sollen ("starke-?-N-####_##_##?"). Nun möchte ich prüfen, ob alle strings korrekt sind. Für jeden string, der fehlerhaft ist, möchte ich in der Message-Box die Adresse der jeweiligen Zelle ausgeben.
Zur Lösung habe ich mich bei unterschiedlichen Prüf-Makros aus dem Netz bedient und habe versucht, sie neu zusammenzusetzen. Leider führt mein Versuch nicht zu dem gewünschten Ergebnis. Als Fehlermeldung wird mir immer die erste und letzte Zelle der chkRange ausgegeben, unabhängig vom Inhalt der Zellen.
Hier der Versuch:

Sub PrüfungSpalteA()
Dim strKB As String
Dim msg As String
Dim chkRange As Range
Dim myC As Range
Dim sMatch As Boolean
Dim letztezeile As Long
Dim i As Integer
Dim letzteadresse As String
letztezeile = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row - 4
letzteadresse = "A" & letztezeile
'Hier die Zellen eintragen die geprüft werden sollen
Set chkRange = Range("A2;" + letzteadresse)
For i = 2 To letztezeile
strKB = Sheets("Vorbereitung Metadaten").Cells(2, i).Value
sMatch = strKB Like "starke-?-N-####_##_##?"
Next
msg = ""
For Each myC In chkRange
If sMatch = False Then
msg = msg & myC.Address & vbCrLf
End If
Next
If msg = "" Then
MsgBox " alles ok"
Else
MsgBox "Folgende Zellen entsprechen nicht dem vorgegebenen Format:" & msg
End If
End Sub
Vermutlich habe ich keine ausreichende Verbindung zwischen myC und i. Hat jemand eine Idee, wie es klappen könnte?

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Prüfung von strings in Range auf Pattern
17.11.2022 15:30:01
strings
im prinzip so

dim Zelle as range
dim erg as string
for each Zelle in Range("A2:A" & Cells(rows.count, 1).End(xlup).Row - 4)
if not Zelle.Value like Like "starke-?-N-####_##_##?" Then Erg = Erg  & vblf & Zelle.Address(0, 0)
next
if Erg = "" then
Msgbox "keine Fehler"
Else
msgbox "Fehler in: " & Erg
end if
Gruß Daniel
AW: Prüfung von strings in Range auf Pattern
17.11.2022 15:40:05
strings
Hallo Daniel,
super, das funktioniert einwandfrei! Und ist viel einfacher, als mein Gestöpsel. Tausend Dank! Nur das doppelte "like" musste ich noch entfernen.
Ganz vielen Dank für Deine Unterstützung!
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige