Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1220to1224
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

Makro wie bedingte Formatierung

Makro wie bedingte Formatierung
marell23
Hallo VBA Profis!
Hab da eine hoffentlich kleine Sache.
Es sollen Zellen in einer Spalte mit einem bestimmten Eintrag farbig markiert werden
Der Eintrag erfolgt über eine Gültigkeitsprüfung mittels einer Liste.
Soweit so gut, funktioniert mit dem Makro. Allerdings ist es nötig das Makro per Button
händisch zu starten.
Der Wunsch wäre, wenn es so wäre wie bei der bedingten Formatierung:
Wert wird eingegeben, Zelle wird sofort farbig. Keine Button, nichts.
Bevor Fragen aufkommen warum ich keine bedingte Formatierung verwende?
Hier können nur 3 Einträge verarbeitet werden. Ich habe hier schon 4, mehr sind in peto.
Hier eine Beispieldat:
https://www.herber.de/bbs/user/75486.xls
Gruß
Markus

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Makro wie bedingte Formatierung
28.06.2011 11:40:25
Dirk
Hallo!
Benutze den SheetChange Event. Wird immer aufgerufen, wenn ein Zellinhalt geaendert wird.
Gruss
Dirk aus Dubai
AW: Makro wie bedingte Formatierung
28.06.2011 12:00:31
marell23
So? Sub XWB_FW88931_Change(ByVal Target As Range)
Geht aber hier nicht.
AW: Makro wie bedingte Formatierung
28.06.2011 11:53:14
JoWE
Hallo Markus,
z.B. so:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim sh As Worksheet
Dim z As Object
Set sh = ActiveSheet
For Each z In sh.Range("J22:J" & _
Cells(sh.Rows.Count, 10).End(xlUp).Row)
Select Case z.Value
Case Is = sh.Range("N7")
z.Interior.ColorIndex = 4
Case Is = sh.Range("N8")
z.Interior.ColorIndex = 5
Case Is = sh.Range("N9")
z.Interior.ColorIndex = 6
Case Is = sh.Range("N10")
z.Interior.ColorIndex = 6
Case Else
z.Interior.ColorIndex = -4142
End Select
Next
End Sub

Gruß
Jochen
Anzeige
AW: Danke
28.06.2011 13:04:53
marell23
Hey geil!
Funktioniert perfekt.
Danke an Jochen und Daniel. Das mit Select Case muß ich mir merken.
Gruß
Markus
AW: Makro wie bedingte Formatierung
28.06.2011 12:31:49
Daniel
Hi
dieses Makro muss ins Modul des Tabellenblatts:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range
Dim Zelle As Range
Set rng = Intersect(Target, Columns(10), Me.UsedRange)
If Not rng Is Nothing Then
For Each Zelle In rng
Select Case Zelle.Value
Case "offen": Zelle.Interior.ColorIndex = 3
Case "in Arbeit": Zelle.Interior.ColorIndex = 6
Case "Vorr. kann verwendet werden": Zelle.Interior.ColorIndex = 7
Case "neue Vorr. in Bestellung": Zelle.Interior.ColorIndex = 8
Case "": Zelle.Interior.ColorIndex = xlNone
End Select
Next
End If
End Sub
bei bedarf kannst du statt der fixen Texte auch den entsprechenden Zellbezug verwenden, so wie JoWE
Gruß, Daniel
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige