Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Ähnlichkeitssuche

Forumthread: Ähnlichkeitssuche

Ähnlichkeitssuche
26.02.2018 14:59:24
Falcosn
Hallo zusammen,
gerne würde ich aus einer Liste gerne alle Zellen und Zelleninhalte auslesen, die jegliche Variation des Wortes "Leerstand" beinhalten. Dazu zählt z.B. "Leerstand *", "Leerstand1", "Leerstand X", "Leerstand_a" usw.
Folgendes Makro, zum Teil mit eurer Hilfe, habe ich dazu bis dato entwickelt.
Bisher habe ich erfolglos versucht die Variationskomponente mit *Leerstand* zu erreichen....
Tausend Dank!
Falcosn

Sub Test()
Dim vertikal As Integer
Range("A207").Select
vertikal = Selection.CurrentRegion.Rows.Count
Dim msg As String
msg = ""
Dim objMerk As Object, oObj, arrMerk()
Set objMerk = CreateObject("scripting.dictionary")
Dim Nutzung As Range
Dim k As Integer
'In Spalte "Nutzungsart" prüfen, ob Einheiten richtig benannt sind
For Each Nutzung In ActiveSheet.Range(Cells(207, 2), Cells(207 + vertikal, 2))
Select Case Nutzung
Case ActiveSheet.Range(Cells(207, 2), Cells(207 + vertikal, 2)).Find(what:="*Leerstand*",  _
LookIn:=xlValues, lookat:=xlPart)
objMerk(Nutzung.Address(0, 0)) = Nutzung.Value
Case Else
' "objMerk definiert den Inhalt: Zellenkoordinaten & Zelleninhalt
End Select
Next Nutzung
k = 0
If objMerk.Count Then
'"arrMerk" wird definiert von 1 bis zur Anzahl der Einträgen die "ungleich" sind
ReDim arrMerk(1 To objMerk.Count)
For Each oObj In objMerk
k = k + 1
arrMerk(k) = oObj & " :" & vbTab & objMerk(oObj)
Next oObj
MsgBox "Folgende Zellen sind falsch befüllt:" & vbCrLf & Join(arrMerk, vbLf), vbInformation  _
_
_
+ vbOKOnly, "Prüferergebnis"
Exit Sub
Else
MsgBox "Alle Zellen in der Spalte Nutzungsart sind richtig befüllt", vbInformation + vbOKOnly, " _
_
_
Prüfungsergebnis"
End If
End Sub

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Ähnlichkeitssuche
26.02.2018 16:24:36
Robert
Hallo,
um ehrlich zu sein, ganz bin ich bei Deinem Code nicht durchgestiegen. Daher mal ein Deutungsversuch: Du möchtest in einer Msgbox alle Zellen ausgeben, die im Bereich B207 bis zum Ende der Spalte B das Wort "Leerstand" irgendwo im Zellinhalt stehen haben. Wenn das so richtig sein sollte, kannst Du das mit nachstehendem Code erreichen:
Sub PruefeInhalt()
Dim strAddresse As String, rngF As Range, firstAddress As String
With ActiveSheet.Range("B207:B" & Range("B" & Rows.Count).End(xlUp).Row)
Set rngF = .Find("Leerstand", LookIn:=xlValues, LookAt:=xlPart)
If Not rngF Is Nothing Then
firstAddress = rngF.Address
Do
strAddresse = strAddresse & vbCrLf & rngF.Address
Set rngF = .FindNext(rngF)
Loop While Not rngF Is Nothing And rngF.Address  firstAddress
End If
End With
If strAddresse  "" Then
MsgBox "Folgende Zellen enthalten das Wort 'Leerstand': " & strAddresse
End If
End Sub
Gruß
Robert
Anzeige
AW: Ähnlichkeitssuche
27.02.2018 09:16:19
Falcosn
Hallo Robert,
klappt, vielen Dank für deine Hilfe!
Beste Grüße
Falcosn
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige