Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1532to1536
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

Bedingte Formatierung mittels VBA realisieren

Bedingte Formatierung mittels VBA realisieren
16.01.2017 11:25:56
David
Guten Morgen zusammen,
ich möchte gerne etwas mittels VBA realisieren,
weiß aber absolut nicht, wie ich vorgehen soll.
In einer Excel-Tabelle sollen Zellen rot markiert werden,
in diesen bestimmte Sonderzeichen vorkommen
(innerhalb des Texte, innerhalb eines Wortes).
Vielleicht kann mir einer einen Rat geben,
wie ich da vorgehen kann?
VG, David

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bedingte Formatierung mittels VBA realisieren
16.01.2017 12:01:24
Werner
Hallo,
hier mal zwei Möglichkeiten als Ansatz. Ausgewertet wird in beiden Fällen die Spalte A. Es wird nach dem ! Ausrufezeichen ausgewertet.
Code1: Bereits bei der (händischen) Eingabe wird entsprechend überprüft und gefärbt.
Code gehört ins Tabellenblatt auf dem er sich auswirken soll.
Rechtsklick auf den Tabellenblattreiter - Code anzeigen - Code rechts ins Codefenster kopieren.
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Then 'hier Spalte A, ggf. anpassen
If InStr(Target.Value, "!") > 0 Then
'If InStr(Target.Value, Chr(33)) > 0 Then 'ansprechen über ASCII Code
Target.Interior.Color = vbRed
End If
End If
End Sub
Code2: Gehört in ein allgemeines Modul. Schaltfläche auf das Tabellenblatt und der Schaltfläche das Makro zuweisen. Der Bereich wird dann bei Klick auf die Schaltfläche überprüft und entsprechend gefärbt.
Public Sub aaa()
Dim rngBereich As Range
Dim rngZelle As Range
Dim loLetzte As Long
'## Ermitteln der letzten belegten Zelle in Spalte A, ggf. anpassen
loLetzte = Sheets("Tabelle2").Cells(Rows.Count, 1).End(xlUp).Row
Set rngBereich = Sheets("Tabelle2").Range("A1:A" & loLetzte) 'Tabelle und Bereich anpassen
For Each rngZelle In rngBereich
If InStr(rngZelle, "!") > 0 Then
'If InStr(rngZelle, Chr(33)) > 0 Then 'ansprechen über ASCII Code
rngZelle.Interior.Color = vbRed
End If
Next rngZelle
End Sub
In beiden Codes ist eine auskommentierte Codezeile drin, die zeigt wie das entsprechende Zeichen über den jeweiligen ASCII Code angesprochen werden kann.
Gruß Werner
Anzeige
Es mag hier, bei statischen Texten, ausreichen, …
16.01.2017 13:48:06
Luc:-?
…Werner,
aber du weißt schon, dass das keine Bedingt­Formatierung im Xl-Sinne ist, sondern eine Direkt­Formatierung nach Bedingungen (per VBA)…
🙈 🙉 🙊 🐵 Gruß, Luc :-?
Besser informiert mit …
AW: Bedingte Formatierung mittels VBA realisieren
16.01.2017 21:51:14
littletramp
Hallo David
Eine Regel heisst, verwende niemals einen Makro für etwas, das du auch mit der Excel-Funktionen lösen kannst.
Somit schlage ich dir folgende Lösung vor (https://www.herber.de/bbs/user/110620.xlsx), die nur bedingte Formatierung und eine Hilfsspalte benötigt:
Userbild
Gruss Markus
Anzeige

327 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige