Herbers Excel-Forum - das Archiv

Noch mal suchen, finden und markieren.

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Bild

Betrifft: Noch mal suchen, finden und markieren.
von: Dunrell

Geschrieben am: 18.12.2006 19:57:52
Hallo.
Frage an die Excel-Experten: Mit unten angezeigtem Makro (Danke Heiko!) wird bewirkt, daß ein Wert in einer Tabelle gefunden und dann zur besseren Auffindbarkeit farbig markiert wird. Allerdings schlage ich mich jetzt noch mit folgender Sache herum...
Da die Tabelle recht lang ist, soll die farbig markierte Zelle, in der der Wert gefunden wurde, dann angezeigt, sprich aktiviert werden. Ich habe es mit dem Vergleich der Variablen versucht (siehe das etwas veränderte Makro von Heiko - die Zeile, welche für sich alleine steht):
Range("B4:L219").Select
Selection.Interior.ColorIndex = xlNone
Range("A1").Select
Dim Zelle As Range
Dim SuchenNeu As String, SuchenAlt As String
Dim Farbe As Long
SuchenNeu = InputBox("Suchbegriff", " Suchbegriff", "")
If SuchenNeu = "" Then Exit Sub
Range("B1").Value = SuchenNeu
With ActiveSheet.UsedRange
Set Zelle = .Find(SuchenNeu, LookIn:=xlValues)
If Not Zelle Is Nothing Then
SuchenAlt = Zelle.Address
Do
Farbe = Zelle.Interior.ColorIndex
Zelle.Interior.ColorIndex = 3
If Range("B1").Value = SuchenNeu Then Zelle = ActiveCell
If MsgBox(" Weitersuchen?", vbYesNo + vbQuestion) = vbNo Then
Exit Sub
End If
Zelle.Interior.ColorIndex = Farbe
Set Zelle = .FindNext(Zelle)
Loop While Not Zelle Is Nothing And Zelle.Address <> SuchenAlt
End If
End With
Ledier wird dann nur die farbig unterlegte Zelle, bzw. der Wert in ihr gelöscht. Eine andere Methode habe ich bis jetzt noch nicht gefunden. Weder Show noch sonstiges zeigt das gewünschte Resultat.
Für eine kleine Anregung wäre ich dankbar.
Ô_Ô
P.S.:
Leider kann man hier den Level nicht mit "drei", also befriedigend auswählen. Das würde eher passen. Alles weiß wohl keiner, oder?
Bild

Betrifft: Ein Range-Objekt...
von: {Boris}
Geschrieben am: 18.12.2006 20:02:49
Hi,
...- in diesem Falls "Zelle" - aktiviert man mit der gleichnamigen Activate-Methode:
If Range("B1").Value = SuchenNeu Then Zelle.Activate
Grüße Boris
Bild

Betrifft: AW: Ein Range-Objekt...
von: Dunrell
Geschrieben am: 18.12.2006 20:07:33
Das Leben kann so einfach sein...
Ich danke Dir Boris.
;-)
 Bild
Excel-Beispiele zum Thema "Noch mal suchen, finden und markieren."
Wert in Array suchen, ohne jedes Datenfeld abzufragen Werte suchen, eintragen und löschen
Wert in ComboBox einlesen, suchen, editieren, ausgeben Name und Vorname suchen, Werte und Fundstellen importieren
Doppelte Einträge finden und löschen Schaltflächen-Id-Nummer finden und Schaltfläche einfügen
Datensätze wechselseitig bei Nichtauffinden markieren Alle Zellen mit Formeln finden