Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
816to820
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
816to820
816to820
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Bedingte Formatierung mit VBA

Bedingte Formatierung mit VBA
06.11.2006 10:17:45
Christian
Hallo Excelfreunde,
ich habe mir ein kleines Makro zur bedingten Formatierung der 4. Bedingung gebaut. Leider dauert die Berechnung bei jedem Zellwechsel zu lange (ca. 5sec), obwohl der Zellbereich mit weniger als 100 Zellen nicht allzu groß ist.
Gibt es irgend eine Möglichkeit das etwas effizienter zu gestalten?
Hier der Code:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim zelle As Range
Application.ScreenUpdating = False
For Each zelle In ActiveSheet.Range("B3").SpecialCells(xlCellTypeAllValidation)
With zelle
If .Value = "xxx" Then
.Interior.ColorIndex = 10 'grün
.Font.ColorIndex = 2 'weiß
ElseIf .Interior.ColorIndex = 10 Then
.Interior.ColorIndex = xlNone 'kein Hintergrund
.Font.ColorIndex = 0 'schwarz
End If
End With
Next
Application.ScreenUpdating = False
End Sub

Ich hoffe Ihr könnt mir Helfen. Vielen Dank.
Gruß,
Christian S.

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bedingte Formatierung mit VBA
06.11.2006 10:25:24
{Boris}
Hi Christian,
...Leider dauert die Berechnung bei jedem Zellwechsel zu lange (ca. 5sec)...
Ich hab das jetzt nicht getestet, aber die SpecialCells lösen im Hintergrund ein heimliches Select aus - und dadurch gerät Dein Ereignis in eine Art Dauerschleife.
Abhilfe: Schalte die Events aus (Applicaton.EnableEvents = False) und am Ende wieder an (True).
Muss es denn das Selection_Change-Ereignis sein?
Grüße Boris
AW: Bedingte Formatierung mit VBA
06.11.2006 12:00:00
Christian
Hallo Boris,
vielen Dank für Deine Antwort. Das SpecialCells soll ja eine bestimmte Range ansprechen, aber ich könnte die Range auch sicher anders auswählen.
Das Ereignis ist mir insofern egal, als dass die bedingte Formatierung so laufen soll, wie die von Excel auch. Habe festgestellt, das es das Change-Ereignis auch tut. Damit gehts auch schneller. Vielen Dank.
Gruß,
Christian
Anzeige

309 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige