Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Gesamte Zeile der activen Zelle farbig markieren.

Gesamte Zeile der activen Zelle farbig markieren.
12.03.2019 17:53:11
David@rittgardt.de
Hallo,
mit diesem Code färbe ich die ganze Zeile einer aktiven Zelle:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Cells.Count > 1 Then Exit Sub
Application.ScreenUpdating = False
Cells.Interior.ColorIndex = 0
With Target
.EntireRow.Interior.Color = vbCyan
End With
Application.ScreenUpdating = True
End Sub
Hierdurch ändert sich allerdings kontinuierlich die aktuelle farbliche formatierung der Zellen.
Ich hatte schon einmal einen Code, der die ursprüngliche formatierung wiederherstellt.
Kann mir da jemand auf die Sprünge helfen?
Vielen Dank.
David
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Gesamte Zeile der activen Zelle farbig markieren.
12.03.2019 17:57:39
David
Sorry in dem Moment habe ich es gefunden :)
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
Const cnNUMCOLS As Long = 256
Const cnHIGHLIGHTCOLOR As Long = 36  'default lt. yellow
Static rOld As Range
Static nColorIndices(1 To cnNUMCOLS) As Long
Dim i As Long
Application.ScreenUpdating = False
If Not rOld Is Nothing Then 'Restore color indices
With rOld.Cells
If .Row = ActiveCell.Row Then Exit Sub 'same row, don't restore
For i = 1 To cnNUMCOLS
If nColorIndices(i) = xlNone Then
.Item(i).Interior.ColorIndex = xlNone
Else
.Item(i).Interior.Color = nColorIndices(i)
End If
Next i
End With
End If
Set rOld = Cells(ActiveCell.Row, 1).Resize(1, cnNUMCOLS)
With rOld
For i = 1 To cnNUMCOLS
nColorIndices(i) = .Item(i).Interior.Color
If .Item(i).Interior.ColorIndex = xlNone Then
nColorIndices(i) = xlNone
Else
nColorIndices(i) = .Item(i).Interior.Color
End If
Next i
.Interior.ColorIndex = cnHIGHLIGHTCOLOR
End With
Application.ScreenUpdating = True
End Sub
Quelle: https://www.mrexcel.com/forum/excel-questions/657614-highlight-entire-row-when-cell-selcted-without-losing-orginal-formats-color-orginal-row.html
Anzeige
AW: Gesamte Zeile der activen Zelle farbig markieren.
12.03.2019 18:40:15
Luschi
Hallo David,
dieser Code ist doch hirnrissig, denn er vergrößert den benutzten Bereich einer Tabelle sinnlos groß; Beispiel:
- leere Arbeitsmappe erstellen
- in Tabelle1!B2 einen Wert eintragen
- in Tabelle1!E5 einen Wert eintragen
- Ergebnis von Debug.Print Tabelle1.UsedRange.Address --» $B$2:$E$5
- den Schönheitscode ins Klassenmodul Tabelle1 kopieren
- Zelle B5 mit Maus markieren
- neues Ergebnis: --» $A$2:$IV$5
Also total verschwenderisch und der User wundert sich, warum die Excel-Datei immer größer wird, obwohl doch nur per Maus Markierungen gemacht wurden.
Gruß von Luschi
aus klein-Paris
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige