Anzeige
Archiv - Navigation
1056to1060
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

bestimmte Strings markieren

bestimmte Strings markieren
10.03.2009 23:24:32
mehmet
Hallo Forum,
in Tabelle3 Splate C habe ich Zeile für Zeile String stehen:
zB.:
C3 steht "Keine DFGH1 111236Z 12FDR 335566Z"
C4 steht "TAF 124312Z TFGF 12/25 JHTFD1"
C5 steht "954656Z 125Z SDFGZ DFGRFG 45665FDG 855647Z DFG45"
und so weiter.
Nun soll alles was 6 Zahlen + String Z hat farblich markiert werden.
Also für C3: 111236Z und 335566Z
soll 11 und 33 blau+fett sein
soll 1236 und 5566 rot+fett sein
soll der String Z grün sein.
Für C4: 124312Z
soll 12 blau+fett sein
soll 4312 rot+fett sein
soll der String Z grün sein.
Für C5: 954656Z
soll 95 blau+fett sein
soll 4656 rot+fett sein
soll der String Z grün sein.
Es sollen also alle in Spalte C kommende Strings (2Zahlen+4Zahlen+Z) markiert werden.
Herzlichen Dank
Gruss
mehmet

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: bestimmte Strings markieren
10.03.2009 23:53:41
Daniel
Hi
das könnte dieses Makro machen, vorausgesetzt, die Werte sind auch tatsächlich Strings und keine Formeln.
mit Formeln gehts nicht.

Sub Umfärben()
Dim PosZ As Long
Dim txt As String
Dim Zelle As Range
For Each Zelle In Columns(3).SpecialCells(xlCellTypeConstants, 2)
PosZ = 0
txt = Zelle.Value
Do
PosZ = InStr(PosZ + 1, txt, "Z")
If PosZ = 0 Then Exit Do
If PosZ > 6 Then
If IsNumeric(Mid(txt, PosZ - 6, 6)) Then
Zelle.Characters(Start:=PosZ - 6, Length:=2).Font.ColorIndex = 5
Zelle.Characters(Start:=PosZ - 4, Length:=4).Font.ColorIndex = 3
Zelle.Characters(Start:=PosZ, Length:=1).Font.ColorIndex = 4
Zelle.Characters(Start:=PosZ - 6, Length:=6).Font.Bold = True
End If
End If
Loop
Next
End Sub


Gruß, Daniel

Anzeige
AW: bestimmte Strings markieren
11.03.2009 00:02:53
mehmet
Hallo Daniel,
es funktioniert
Herzlichen Dank
Gruss
mehmet
PS: Mit deinem Erlaubnis möchte ich weitere Frage stellen
Soll ich es hier stellen oder Forum neu eröffnen
Es handelt sich um weitere Markierungen in den Strings
Also alles ZahlZahlZahlZahlSchrägstrichZahlZahlZahlZahl ist, soll markiert werden
Z.Z. 1018/1118 soll 10 und 11 blau und 18 und 18 soll rot sein oder
1019/1021 soll 10 und 10 soll blau sein und 19 und 21 soll rot sein oder
1020/1106 soll 10 und 11 soll blau sein und 20 und 06 soll rot sein
Wieder in Tabelle3 Splate C.
Dank Dir nochmal
Gruss
mehmet
Anzeige
AW: geht doch genauso.
11.03.2009 00:08:22
Daniel
Hi
das kannst du doch jetzt genauso aufbauen, du musst halt nur anstelle nach "Z" nach dem Schrägstrich suchen und die Längen der Teilstrings entsprechend anpassen (also aus 6 dann 4 machen)
Gruß, Daniel
AW: geht doch genauso.
11.03.2009 00:16:39
mehmet
Hallo Daniel,
habe aus der 6 eine 4 gemacht und Z wurde /

Sub Umfärben_Schraegstrich()
Sheets("Tabelle3").Select
Dim PosZ As Long
Dim txt As String
Dim Zelle As Range
For Each Zelle In Columns(3).SpecialCells(xlCellTypeConstants, 2)
PosZ = 0
txt = Zelle.Value
Do
PosZ = InStr(PosZ + 1, txt, "/")
If PosZ = 0 Then Exit Do
If PosZ > 4 Then
If IsNumeric(Mid(txt, PosZ - 4, 4)) Then
Zelle.Characters(Start:=PosZ - 4, Length:=2).Font.ColorIndex = 5
Zelle.Characters(Start:=PosZ - 4, Length:=4).Font.ColorIndex = 3
Zelle.Characters(Start:=PosZ, Length:=1).Font.ColorIndex = 4
Zelle.Characters(Start:=PosZ - 4, Length:=4).Font.Bold = True
End If
End If
Loop
Next
End Sub


Also alles links von / werden markiert.
Rechts von / wird nicht markiert.
Koenntest Du bitte noch mal schauen.
Ich denke, dass Du eine bessere Lösung hast
Herzlichen Dank im voraus Gruss
mehmet

Anzeige
AW: geht doch genauso.
11.03.2009 00:24:19
Daniel
Hi
so wie du eine Textposition nach links mit - verschieben kannst, kannst du sie mit + nach rechts verschieben.
damit kannst du dann dein Makro auch für die Zahlen rechts vom Schrägstrich erweitern.
Gruß, Daniel
AW: geht doch genauso.
11.03.2009 00:27:34
mehmet
Ja,
Dank Dir trotzdem Daniel.
Gruss
mehmet
AW: geht doch genauso.
11.03.2009 00:58:59
mehmet
Hallo Daniel,
hmm.., sorry!
Ich krieg es nicht hin 8-(
Kannst Du noch mal bitte ...
Gruss
mehmet
AW: geht doch genauso.
11.03.2009 01:10:18
Daniel
Hi
zum Formatieren der Textbereiche rechts vom Schrägsrich folgendes Einfügen:

Zelle.Characters(Start:=PosZ + 1 , Length:=2).Font.ColorIndex = 5
Zelle.Characters(Start:=PosZ + 3, Length:=2).Font.ColorIndex = 3


die Prüfung, ob die 4 Zeichen rechst vom Schrägstrich Zahlen sind, wirst du ja wohl hoffentlich selber hinkriegen.
kann doch nicht so schwer sein.
Gruß, daniel

Anzeige
AW: geht doch genauso.
11.03.2009 01:28:05
mehmet
Hallo Daniel,

Sub Umfärben_Schraegstrich()
Sheets("Tabelle3").Select
Dim PosZ As Long
Dim txt As String
Dim Zelle As Range
For Each Zelle In Columns(3).SpecialCells(xlCellTypeConstants, 2)
PosZ = 0
txt = Zelle.Value
Do
PosZ = InStr(PosZ + 1, txt, "/")
If PosZ = 0 Then Exit Do
If PosZ > 4 Then
If IsNumeric(Mid(txt, PosZ - 4, 4)) Then
Zelle.Characters(Start:=PosZ - 4, Length:=2).Font.ColorIndex = 5 'blau
Zelle.Characters(Start:=PosZ - 2, Length:=2).Font.ColorIndex = 3 'rot
Zelle.Characters(Start:=PosZ - 4, Length:=4).Font.Bold = True
Zelle.Characters(Start:=PosZ, Length:=1).Font.ColorIndex = 4 'hellgrün
Zelle.Characters(Start:=PosZ - 0, Length:=4).Font.Bold = True
Zelle.Characters(Start:=PosZ + 1, Length:=2).Font.ColorIndex = 5 'blau
Zelle.Characters(Start:=PosZ + 3, Length:=2).Font.ColorIndex = 3 'rot
Zelle.Characters(Start:=PosZ + 1, Length:=4).Font.Bold = True
End If
End If
Loop
Next
End Sub


Makro läuft so weit.
Aber ist es auch stielistisch!
Gruss
mehmet

Anzeige
jaaa...sehr stielistisch! *LOL* (owT)
11.03.2009 09:42:15
Renee

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige