Übereinstimmung von Autofilter fett markieren

Bild

Betrifft: Übereinstimmung von Autofilter fett markieren
von: Dirk
Geschrieben am: 31.03.2005 16:22:38
Hallo zusammen,
mittels folgendem Code suche ich durch den Autofilter nach einem vorher ausgewählten Begriff bzw. User:
Dim myUser

myUser = Sheets("OS-User").Cells(globalRow, 1)
Selection.AutoFilter Field:=4, Criteria1:="=*" & myUser & "," & "*", Criteria2:="=*" & myUser, Operator:=xlOr
Sei beispielsweise "oracle" ausgewählt, d. h. myUser = "oracle", soll in folgender Zelle (AutoFilter Field4) nur die Übereinstimmung "oracle" fett oder kursiv geschrieben werden (nicht aber die ganze Zelle).
Inhalt der Zelle: oracle,wwwtest,wwwentw,wgvftp
Ich hoffe ihr wisst, was ich meine ;-/.
Ist das machbar und wenn ja, wie kann ich nur die Übereinstimmmung ansprechen (und nicht die ganze Zelle)?
Liebe Grüße, Dirk

Bild

Betrifft: AW: Übereinstimmung von Autofilter fett markieren
von: ANdreas
Geschrieben am: 31.03.2005 16:36:31
Hallo Dirk,
hier mal als Beispiel:

Sub Beispiel()
Dim r As Range, c As Range
Dim myUser$, i%
myUser = "testwert"
On Error Resume Next
' Spalte normal formatieren
Columns(4).Font.Bold = False
Set r = Application.Intersect(Columns(4), _
    ActiveSheet.UsedRange).SpecialCells(xlCellTypeVisible)
For Each c In r
    i = InStr(c.Value, myUser)
    If i > 0 Then c.Characters(Start:=i, _
        Length:=Len(myUser)).Font.Bold = True
Next c
Set r = Nothing
End Sub

Gruß
Andreas
Bild

Betrifft: AW: Übereinstimmung von Autofilter fett markieren
von: Dirk
Geschrieben am: 31.03.2005 16:53:53
Hallo Andreas,
soll ich das jetzt verstehen ;-( ??? (grübel)
Ich werd es mal versuchen einzubauen, aber trotzdem schon mal vielen Dank.
Gruß, Dirk
Bild

Betrifft: Hat funktioniert. Echt Super. Vielen Dank
von: Dirk
Geschrieben am: 31.03.2005 17:29:03
Ich kann es zwar mit meinen Kenntnissen nur stückweise nachvollziehen, aber es funktioniert wunderbar. Vielen Dank nochmal
Bild

Betrifft: AW: Übereinstimmung von Autofilter fett markieren
von: ANdreas
Geschrieben am: 31.03.2005 17:37:40
Hallo Dirk,
wenn Du etwas nicht verstehst, frag einfach.
Das Beispiel durchsucht in Spalte D (Columns(4) ) jede Zelle im gefilterten (sichtbaren) Bereich. Wird der Ausdruck der Variable myUser in einer Zelle gefunden (nur das 1. Vorkommen), so wird dieses fett markiert.
Wie gesagt, einfach fragen sobald etwas unklar ist.
Andreas
Bild

Betrifft: AW: Bitte nochmal melden
von: Dirk
Geschrieben am: 01.04.2005 10:52:55
Hallo Andreas,
also so langsam steig ich einigermaßen durch!
Habe leider nur doch noch ein kleines Problem, da das erste Vorkommen markiert wird.
Bei folgendem Zellinhalt wird deshalb (bei "oracle" als myUser) das oracle von oraclep2
fett geschrieben, da das als erstes gefunden wird. Richtig wäre aber das oracle an 13. Stelle.
Zellinhalt:
oraclep2,icisdba,dietrich,invscout,wwwtest,wwwentw,beta48,wgvftp,wwwleben,webicis,avuser,batchdba,oracle,ldap,ipsec,sshd

Kann ich bzw. du ;-) das noch entsprechend anpassen, da es mir noch nicht gelungen ist???
Hier ist mein aktueller Code dafür:

Sub user_groups()
Dim r As Range, c As Range
Dim myUser, i%
 
myUser = Sheets("OS-User").Cells(globalRow, 1)
 Selection.AutoFilter Field:=4, Criteria1:="=*" & myUser & "," & "*", Criteria2:="=*" & myUser, Operator:=xlOr
' Spalte normal formatieren
Columns(4).Font.Bold = False
Set r = Application.Intersect(Columns(4), _
    ActiveSheet.UsedRange).SpecialCells(xlCellTypeVisible)
For Each c In r
    i = InStr(c.Value, myUser)
    If i > 0 Then c.Characters(Start:=i, _
        Length:=Len(myUser)).Font.Bold = True
Next c
Set r = Nothing
End Sub

 Bild

Beiträge aus den Excel-Beispielen zum Thema "Übereinstimmung von Autofilter fett markieren"