Ü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"