Direkt zum Inhalt

Das Navigieren durch umfangreiche Excel-Arbeitsblätter voller Daten kann eine Herausforderung sein, und es ist leicht, den Überblick zu verlieren oder Werte falsch zu lesen. Um Ihre Datenanalyse zu verbessern und das Fehlerrisiko zu verringern, stellen wir drei verschiedene Möglichkeiten vor, um die Zeile und Spalte einer ausgewählten Zelle in Excel dynamisch hervorzuheben. Wenn Sie von Zelle zu Zelle wechseln, ändert sich die Hervorhebung dynamisch und bietet einen klaren und intuitiven visuellen Hinweis, damit Sie sich auf die richtigen Daten konzentrieren können, wie in der folgenden Demo gezeigt:

Aktive Zeile und Spalte in Excel automatisch hervorheben


Video: Aktive Zeile und Spalte in Excel automatisch hervorheben


Aktive Zeile und Spalte automatisch mit VBA-Code hervorheben

Um automatisch die gesamte Spalte und Zeile der ausgewählten Zelle im aktuellen Arbeitsblatt hervorzuheben, kann Ihnen der folgende VBA-Code bei dieser Aufgabe helfen.

Schritt 1: Öffnen Sie das Arbeitsblatt, in dem Sie die aktive Zeile und Spalte automatisch hervorheben möchten

Schritt 2: Öffnen Sie den VBA-Blattmodul-Editor und kopieren Sie den Code

  1. Klicken Sie mit der rechten Maustaste auf den Blattnamen und wählen Sie Code anzeigen Siehe im Kontextmenü Screenshot:
  2. Kopieren Sie im geöffneten VBA-Blattmodul-Editor den folgenden Code und fügen Sie ihn in das leere Modul ein. Siehe Screenshot:
    VBA-Code: Zeile und Spalte der ausgewählten Zelle automatisch hervorheben
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    'Update by Extendoffice
        Dim rowRange As Range
        Dim colRange As Range
        Dim activeCell As Range
        Set activeCell = Target.Cells(1, 1)
        Set rowRange = Rows(activeCell.Row)
        Set colRange = Columns(activeCell.Column)
         Cells.Interior.ColorIndex = xlNone
        rowRange.Interior.Color = RGB(248, 150, 171)
        colRange.Interior.Color = RGB(173, 233, 249)
    End Sub
    
    Tipps: Passen Sie den Code an
    • Um die Hervorhebungsfarbe zu ändern, müssen Sie lediglich den RGB-Wert in den folgenden Skripten ändern:
      rowRange.Interior.Color = RGB(248, 150, 171)
      colRange.Interior.Color = RGB(173, 233, 249)
    • Um nur die gesamte Zeile der ausgewählten Zelle hervorzuheben, entfernen Sie diese Zeile oder kommentieren Sie sie aus (fügen Sie am Anfang ein Apostroph hinzu):
      colRange.Interior.Color = RGB(173, 233, 249)
    • Um nur die gesamte Spalte der ausgewählten Zelle hervorzuheben, entfernen Sie diese Zeile oder kommentieren Sie sie aus (fügen Sie am Anfang ein Apostroph hinzu):
      rowRange.Interior.Color = RGB(248, 150, 171)

  3. Schließen Sie dann das VBA-Editorfenster, um zum Arbeitsblatt zurückzukehren.

Ergebnis:

Wenn Sie nun eine Zelle auswählen, wird die gesamte Zeile und Spalte dieser Zelle automatisch hervorgehoben, und die Hervorhebung verschiebt sich dynamisch, wenn sich die ausgewählte Zelle ändert, wie in der folgenden Demo gezeigt:

Anmerkungen:
  • Dieser Code löscht die Hintergrundfarben aus allen Zellen im Arbeitsblatt. Vermeiden Sie daher die Verwendung dieser Lösung, wenn Sie Zellen mit benutzerdefinierten Farben haben.
  • Durch Ausführen dieses Codes wird das deaktiviert Rückgängig machen Dies bedeutet, dass Sie keine Fehler durch Drücken der Taste rückgängig machen können Strg + Z Abkürzung.
  • Dieser Code funktioniert nicht in einem geschützten Arbeitsblatt.
  • Um die Hervorhebung der Zeile und Spalte der ausgewählten Zelle zu beenden, müssen Sie den zuvor hinzugefügten VBA-Code entfernen. Danach können Sie die Hervorhebung durch Klicken zurücksetzen Home > Füllfarbe > Keine Füllung.

Markieren Sie aktive Zeilen und Spalten automatisch mit nur einem Klick von Kutools

Stehen Sie vor den Einschränkungen des VBA-Codes in Excel? Kutoolen für Excel's Rasterfokus Funktion ist Ihre ideale Lösung! Es wurde entwickelt, um die Mängel von VBA zu beheben, und bietet eine Vielzahl von Hervorhebungsstilen, um Ihr Blatterlebnis zu verbessern. Mit der Möglichkeit, diese Stile auf alle geöffneten Arbeitsmappen anzuwenden, Kutoolen sorgt für einen durchgängig effizienten und optisch ansprechenden Datenverwaltungsprozess.

Note: Wenn Sie dies verwenden möchten Rasterfokus Funktion, bitte Laden Sie Kutools für Excel herunter und installieren Sie es zuerst.

Nach der Installation Kutools for Excel, Klicken Sie bitte Kutoolen > Rasterfokus um diese Funktion zu aktivieren. Jetzt können Sie sehen, dass die Zeile und Spalte der aktiven Zelle sofort hervorgehoben werden. Diese Hervorhebung ändert sich dynamisch, wenn Sie Ihre Zellenauswahl ändern. Sehen Sie sich die Demo unten an:

Hauptvorteile der Grid Focus-Funktion:
  • Behält die ursprünglichen Zellenhintergrundfarben bei:
    Im Gegensatz zum VBA-Code berücksichtigt diese Funktion die vorhandene Formatierung Ihres Arbeitsblatts.
  • Verwendbar in geschützten Blättern:
    Diese Funktion funktioniert nahtlos in geschützten Arbeitsblättern und eignet sich daher ideal für die Verwaltung sensibler oder gemeinsam genutzter Dokumente ohne Kompromisse bei der Sicherheit.
  • Hat keinen Einfluss auf die Rückgängig-Funktion:
    Mit dieser Funktion behalten Sie vollen Zugriff auf die Rückgängig-Funktion von Excel. Dadurch wird sichergestellt, dass Sie Änderungen problemlos rückgängig machen können, was Ihrer Datenmanipulation eine zusätzliche Sicherheitsebene verleiht.
  • Stabile Leistung bei großen Datenmengen:
    Diese Funktion wurde für die effiziente Verarbeitung großer Datenmengen entwickelt und gewährleistet eine stabile Leistung auch in komplexen und datenintensiven Tabellenkalkulationen.
  • Mehrere Hervorhebungsstile:
    Diese Funktion bietet eine Vielzahl von Hervorhebungsoptionen, sodass Sie aus verschiedenen Stilen und Farben wählen können, um Ihre aktive Zelle aus Zeile, Spalte oder Zeile und Spalte so hervorzuheben, dass sie Ihren Vorlieben und Bedürfnissen am besten entspricht.
Tipps:

Aktive Zeile und Spalte automatisch mit bedingter Formatierung hervorheben

In Excel können Sie auch eine bedingte Formatierung einrichten, um die aktive Zeile und Spalte automatisch hervorzuheben. Um diese Funktion einzurichten, befolgen Sie bitte diese Schritte:

Schritt 1: Wählen Sie den Datenbereich aus

Wählen Sie zunächst den Zellbereich aus, auf den diese Funktion angewendet werden soll. Dies kann das gesamte Arbeitsblatt oder ein bestimmter Datensatz sein. Hier wähle ich das gesamte Arbeitsblatt aus.

Schritt 2: Greifen Sie auf die bedingte Formatierung zu

Klicken Sie auf Kostenlos erhalten und dann auf Installieren. Home > Bedingte Formatierung > Neue Regel, siehe Screenshot:

Schritt 3: Legen Sie die Vorgänge in der neuen Formatierungsregel fest

  1. Im Neue Formatierungsregel Dialogfeld, wählen Sie Verwenden Sie eine Formel, um zu bestimmen, welche Zellen formatiert werden sollen von dem Wählen Sie einen Regeltyp Listenfeld.
  2. Im Formatieren Sie Werte, bei denen diese Formel wahr ist Geben Sie in das Feld eine dieser Formeln ein. In diesem Beispiel wende ich die dritte Formel an, um die aktive Zeile und Spalte hervorzuheben.
    So markieren Sie die aktive Zeile:
    =CELL("row")=ROW()
    So markieren Sie die aktive Spalte:
    =CELL("col")=COLUMN()
    So markieren Sie die aktive Zeile und Spalte:
    =OR(CELL("row")=ROW(), CELL("col")= COLUMN())
  3. Dann klick Format .
  4. Im Folgenden Format Cells Dialogfeld unter Füllen Wählen Sie auf der Registerkarte eine Farbe aus, um die aktive Zeile und Spalte nach Bedarf hervorzuheben. Siehe Screenshot:
  5. Dann klick OK > OK um die Dialoge zu schließen.

Ergebnis:

Jetzt können Sie sehen, dass die gesamte Spalte und Zeile der Zelle A1 auf einmal hervorgehoben wurde. Um diese Hervorhebung auf eine andere Zelle anzuwenden, klicken Sie einfach auf die gewünschte Zelle und drücken Sie die Taste F9 Um das Blatt zu aktualisieren, wird die gesamte Spalte und Zeile der neu ausgewählten Zelle hervorgehoben.

Tipps: 
  • Obwohl der Ansatz der bedingten Formatierung für die Hervorhebung in Excel eine Lösung bietet, ist er nicht so nahtlos wie die Verwendung VBA und Rasterfokus Besonderheit. Diese Methode erfordert eine manuelle Neuberechnung des Blattes (erreicht durch Drücken der Taste). F9 Schlüssel).
    Um eine automatische Neuberechnung Ihres Arbeitsblatts zu ermöglichen, können Sie einen einfachen VBA-Code in das Codemodul Ihres Zielblatts integrieren. Dadurch wird der Aktualisierungsprozess automatisiert und sichergestellt, dass die Hervorhebung sofort aktualisiert wird, wenn Sie verschiedene Zellen auswählen, ohne die Taste zu drücken F9 Schlüssel. Bitte klicken Sie mit der rechten Maustaste auf den Blattnamen und wählen Sie dann Code anzeigen aus dem Kontextmenü. Kopieren Sie dann den folgenden Code und fügen Sie ihn in das Blattmodul ein:
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
      Target.Calculate
    End Sub
    
  • Die bedingte Formatierung behält die vorhandene Formatierung bei, die Sie manuell auf Ihr Arbeitsblatt angewendet haben.
  • Es ist bekannt, dass die bedingte Formatierung volatil ist, insbesondere wenn sie auf sehr große Datensätze angewendet wird. Seine übermäßige Nutzung kann möglicherweise die Leistung Ihrer Arbeitsmappe verlangsamen und die Effizienz der Datenverarbeitung und Navigation beeinträchtigen.
  • Die CELL-Funktion ist nur in den Excel-Versionen 2007 und höher verfügbar. Diese Methode ist nicht mit früheren Excel-Versionen kompatibel.

Vergleich der oben genannten Methoden

Merkmal VBA-Code Bedingte Formatierung Kutools for Excel
Behalten Sie die Hintergrundfarbe der Zelle bei Nein Ja Ja
Unterstützt Rückgängigmachen Nein Ja Ja
Stabil in großen Datensätzen Nein Nein Ja
Verwendbar in geschützten Blättern Nein Ja Ja
Gilt für alle geöffneten Arbeitsmappen Nur aktuelles Blatt Nur aktuelles Blatt Alle offenen Arbeitsmappen
Erfordert manuelle Aktualisierung (F9) Nein Ja Nein

Damit ist unsere Anleitung zum Hervorheben der Spalte und Zeile einer ausgewählten Zelle in Excel abgeschlossen. Wenn Sie weitere Excel-Tipps und -Tricks erfahren möchten, finden Sie auf unserer Website Tausende von Tutorials Klicken Sie hier, um darauf zuzugreifen. Vielen Dank fürs Lesen und wir freuen uns darauf, Ihnen in Zukunft weitere hilfreiche Informationen zur Verfügung zu stellen!


Weitere Artikel:

  • Zeile und Spalte der aktiven Zelle automatisch hervorheben
  • Wenn Sie ein großes Arbeitsblatt mit zahlreichen Daten anzeigen, möchten Sie möglicherweise die Zeile und Spalte der ausgewählten Zelle hervorheben, damit Sie die Daten einfach und intuitiv lesen können, um ein falsches Lesen zu vermeiden. Hier kann ich Ihnen einige interessante Tricks vorstellen, um die Zeile und Spalte der aktuellen Zelle hervorzuheben. Wenn die Zelle geändert wird, werden die Spalte und Zeile der neuen Zelle automatisch hervorgehoben.
  • Markieren Sie jede zweite Zeile oder Spalte in Excel
  • In einem großen Arbeitsblatt verbessert das Hervorheben oder Ausfüllen jeder zweiten oder jeder n-ten Zeile oder Spalte die Sichtbarkeit und Lesbarkeit der Daten. Dadurch sieht das Arbeitsblatt nicht nur übersichtlicher aus, sondern Sie können die Daten auch schneller verstehen. In diesem Artikel führen wir Sie durch verschiedene Methoden zum Schattieren jeder zweiten oder neunten Zeile oder Spalte und helfen Ihnen, Ihre Daten ansprechender und einfacher darzustellen.
  • Markieren Sie beim Scrollen die gesamte/ganze Zeile
  • Wenn Sie ein großes Arbeitsblatt mit mehreren Spalten haben, ist es für Sie schwierig, Daten in dieser Zeile zu unterscheiden. In diesem Fall können Sie die gesamte Zeile der aktiven Zelle markieren, sodass Sie die Daten in dieser Zeile schnell und einfach anzeigen können, wenn Sie in der horizontalen Bildlaufleiste nach unten scrollen. In diesem Artikel werde ich einige Tricks erläutern, mit denen Sie dieses Problem lösen können .
  • Markieren Sie Zeilen basierend auf der Dropdown-Liste
  • In diesem Artikel wird erläutert, wie Zeilen basierend auf der Dropdown-Liste hervorgehoben werden. Machen Sie beispielsweise den folgenden Screenshot. Wenn ich in der Dropdown-Liste in Spalte E "In Bearbeitung" auswähle, muss ich diese Zeile mit roter Farbe hervorheben, wenn ich Wählen Sie "Abgeschlossen" aus der Dropdown-Liste. Ich muss diese Zeile mit blauer Farbe markieren. Wenn ich "Nicht gestartet" auswähle, wird eine grüne Farbe verwendet, um die Zeile hervorzuheben.
Comments (61)
Rated 5 out of 5 · 1 ratings
This comment was minimized by the moderator on the site
And please reply to an email
This comment was minimized by the moderator on the site
Great job . But in the first task at the top of the browser page, when I did it, it was working correctly, but when I made protection for the sheet, it stopped working correctly, you see, what's the solution. Thank you
This comment was minimized by the moderator on the site
Hello,
To solve your problem, please apply the followign code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim rowRange As Range
    Dim colRange As Range
    Dim activeCell As Range
    Me.Unprotect
    Cells.Interior.ColorIndex = xlNone
    Set activeCell = Target.Cells(1, 1)
    Set rowRange = Rows(activeCell.Row)
    Set colRange = Columns(activeCell.Column)
    rowRange.Interior.Color = RGB(173, 233, 249)
    colRange.Interior.Color = RGB(173, 233, 249)
    Me.Protect
End Sub



Please have a try, hope it can help you!
This comment was minimized by the moderator on the site
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    On Error Resume Next
    
    ' Clear previous highlighting
    Me.Cells.FormatConditions.Delete
    
    ' Check if Checkbox1 is checked
    ' If CheckBox1.Value = True Then
        ' Check if a single cell or a range of cells is selected
        If Target.Cells.Count = 1 Or Target.Cells.Count > 1 Then
            Dim selectedRange As Range
            Dim selectedRows As Range
            Dim selectedColumns As Range
            
            Set selectedRange = Target
            Set selectedRows = Me.Range(Me.Cells(selectedRange.Row, 1), Me.Cells(selectedRange.Row + selectedRange.Rows.Count - 1, 1).EntireRow)
            Set selectedColumns = Me.Range(Me.Cells(1, selectedRange.Column), Me.Cells(1, selectedRange.Column + selectedRange.Columns.Count - 1).EntireColumn)
            
            ' Add conditional formatting to highlight the selected rows
            With selectedRows.FormatConditions.Add(Type:=xlExpression, Formula1:="=TRUE")
                .Interior.Color = RGB(255, 230, 153) ' Yellow color
            End With
            
            ' Add conditional formatting to highlight the selected columns
            With selectedColumns.FormatConditions.Add(Type:=xlExpression, Formula1:="=TRUE")
                .Interior.Color = RGB(255, 230, 153) ' Yellow color
            End With
        End If
    ' End If
    
    On Error GoTo 0
End Sub
This comment was minimized by the moderator on the site
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next

' Clear previous highlighting
Me.Cells.FormatConditions.Delete

' Check if a single cell or a range of cells is selected
If Target.Cells.Count = 1 Or Target.Cells.Count > 1 Then
Dim selectedRange As Range
Dim selectedRows As Range
Dim selectedColumns As Range

Set selectedRange = Target
Set selectedRows = Me.Range(Me.Cells(selectedRange.Row, 1), Me.Cells(selectedRange.Row + selectedRange.Rows.Count - 1, 1).EntireRow)
Set selectedColumns = Me.Range(Me.Cells(1, selectedRange.Column), Me.Cells(1, selectedRange.Column + selectedRange.Columns.Count - 1).EntireColumn)

' Add conditional formatting to highlight the selected rows
With selectedRows.FormatConditions.Add(Type:=xlExpression, Formula1:="=TRUE")
.Interior.Color = RGB(255, 230, 153) ' Yellow color
End With

' Add conditional formatting to highlight the selected columns
With selectedColumns.FormatConditions.Add(Type:=xlExpression, Formula1:="=TRUE")
.Interior.Color = RGB(255, 230, 153) ' Yellow color
End With
End If

On Error GoTo 0
End Sub
This comment was minimized by the moderator on the site
can you please post code in VBA format? trying to figure out what your code looks like from what you posted in a jumble is frustrating.
This comment was minimized by the moderator on the site
Hi,

The above code is brilliant. But i have two questions and if you can help then will be much appreciated. Let me know if there is cost associated with it.

1. The above code is removing my previous formatting of the cells. Eg. if i have got the cells filld with blue then above code clears that fill.
2. Is there a code that i can use when i am extracting values from another sheet and that row in the that sheet gets highlighted as well. Eg. I want to extract vale from another cell, so when i press = sign in sheet 1 and then when i move to sheet 2 to bring the value the row in the sheet doesn't get highlighted.

Regards,
This comment was minimized by the moderator on the site
Hello, Patel
For the first question:
It may be difficult to modify the VBA code, so, I recommend you to apply the Conditional Formatting feature for solving this problem, the following article may help you:
https://www.extendoffice.com/documents/excel/3500-excel-highlight-selected-row-conditional-formatting.html

Or you can use the Kutools for Excel' Reading Layout feature, you can try it 30 days for free.
Please download from: https://www.extendoffice.com/download/kutools-for-excel.html

For the second question:
Sorry, I can't solve this problem at present,😜
This comment was minimized by the moderator on the site
How do you modify the code so that:
1. It does not permanently strip existing colors of cells. Currently, after another cell is selected, it leaves colorless previous row. I'd like to keep the colors of the worksheet, as they were before row was highlighted by this code.
2. Limit the highlight width to only Columns A thru K, not the entire row.
This comment was minimized by the moderator on the site
Hello,
It may be difficult to modify the VBA code, so, here, I recommend you to apply the Conditional Formatting feature for solving this problem, please view the below article: (Note: if you need to highlight the column A to column K, you just need to select the range you need, and then apply the conditional formatting.)
https://www.extendoffice.com/documents/excel/3500-excel-highlight-selected-row-conditional-formatting.html


Or you can use the Kutools for Excel' Reading Layout feature, you can try it 30 days for free.
Please download from: https://www.extendoffice.com/download/kutools-for-excel.html

Please try, hope it can help you!
This comment was minimized by the moderator on the site
Thank you so much for this tip!!!
Rated 5 out of 5
This comment was minimized by the moderator on the site
Another easy way to highlight your rows: https://youtu.be/iOF06mZDGIk
This comment was minimized by the moderator on the site
FAIL. Wiped out all my other cell formatting irreversibly. And doesn't work if the sheet is protected. FAIL.
This comment was minimized by the moderator on the site
Hi Gues,The code does not work in a protected worksheet. If you want to keep the original cell formatting, please try the below code.The Reading Layout feature of Kutools is stable and handy, maybe you can download a free trial to have a try.
<div data-tag="code">Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
'Update 202001106
Static xRow
Static xColumn

Dim xWs As Worksheet
Dim xCRg, xCRg1, xRRg, xRRg1, xOHRg As Range
Dim xAHRORg, xAHRORg1 As Range
Dim xAWs As Worksheet
Dim xFNum As Integer
Dim xCll As Range

On Error Resume Next

Application.ScreenUpdating = False
pRow = Selection.Row
pColumn = Selection.Column

Set xWs = ActiveWorkbook.Worksheets.Item("AutoHighlightRAndC")
Set xAWs = Target.Worksheet
If xWs Is Nothing Then
Set xWs = ActiveWorkbook.Worksheets.Add
xWs.Name = "AutoHighlightRAndC"
xWs.Visible = xlSheetHidden
xAWs.Activate
End If

If xColumn <> "" Then
Set xCRg = Columns(xColumn)
xCRg.Interior.ColorIndex = xlNone
Set xCRg = Intersect(xCRg.Worksheet.UsedRange, xCRg)
For xFNum = 1 To xCRg.Count
Set xAHRORg1 = xAWs.Cells(xFNum, xColumn)
Set xAHRORg = xWs.Cells(xFNum, xColumn)
xAHRORg1.Interior.ColorIndex = xAHRORg.Interior.ColorIndex
'xCRg.Item(xFNum).Interior.ColorIndex = xWs.Columns(xColumn).Item(xFNum).Interior.ColorIndex
Next

Set xRRg = Rows(xRow)
xRRg.Interior.ColorIndex = xlNone
Set xRRg = Intersect(xCRg.Worksheet.UsedRange, xCRg)
For xFNum = 1 To xRRg.Count
Set xAHRORg1 = xAWs.Cells(xRow, xFNum)
Set xAHRORg = xWs.Cells(xRow, xFNum)
xAHRORg1.Interior.ColorIndex = xAHRORg.Interior.ColorIndex
'xRRg.Item(xFNum).Interior.ColorIndex = xWs.Rows(xRow).Item(xFNum).Interior.ColorIndex
Next

End If

xRow = pRow
xColumn = pColumn

Set xCRg = Columns(pColumn)
Set xCRg1 = Intersect(xCRg.Worksheet.UsedRange, xCRg)
For xFNum = 1 To xCRg1.Count
Set xOHRg = xWs.Cells(xFNum, pColumn)
xOHRg.Interior.ColorIndex = xCRg1.Item(xFNum).Interior.ColorIndex
Next

Set xRRg = Rows(pRow)
Set xRRg1 = Intersect(xRRg.Worksheet.UsedRange, xRRg)

For xFNum = 1 To xRRg1.Count
Set xCll = xWs.Cells(pRow, xFNum)
xCll.Interior.ColorIndex = xRRg1.Item(xFNum).Interior.ColorIndex
Next
xCRg.Interior.ColorIndex = 34
xRRg.Interior.ColorIndex = 34
Application.ScreenUpdating = True
End Sub
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations