Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Aktive Zelle / gesamte Zeile selektieren

Aktive Zelle / gesamte Zeile selektieren
Klaus
Hallo Beisammen!
Folgende Problemstellung:
Ich habe die Daten einer sehr breiten Tabelle (Spalte A:CJ)auf Plausibilität zu prüfen.
Bin daher auf der Suche nach VBA-Codes, die zwecks besserer Übersicht bei Auswahl einer Zelle gleich die gesamte Zeile markieren.
Beim Stöbern im Archiv bin ich auf folgende Lösungen gestossen:
Rows(Target.Row).Select
oder
ActiveCell.EntireRow.Select
Diese Worksheet-Codes arbeiten tadellos, jedoch wird in beiden Fällen die Zelle in Spalte A aktiv gesetzt.
Hat jemand von euch eine Idee, wie trotz der selektierten Zeile die ursprünglich angewählte Zelle aktiv bleiben könnte, denn genau hier möchte ich den Inhalt bearbeiten.
z.B. beim Anklicken der Zelle AH1235 wird die gesamte Zeile 1235 selektiert, aber die Zelle AH1235 bleibt für die Bearbeitung weitehin aktiv.
Danke im Voraus
Klaus
Anzeige

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

Betreff
Benutzer
Anzeige
AW: Aktive Zelle / gesamte Zeile selektieren
26.01.2011 10:16:05
hary
Hallo Klaus
wenn Du keine Farben drin hast ginge es auch so.

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
With Cells
.Interior.ColorIndex = xlNone
End With
Target.EntireRow.Interior.ColorIndex = 8
End Sub

oder mit Rahmen

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Cells.Borders(xlInsideHorizontal).LineStyle = xlNone
ActiveCell.EntireRow.Borders(xlEdgeBottom).LineStyle = xlContinuous
ActiveCell.EntireRow.Borders(xlEdgeTop).LineStyle = xlContinuous
End Sub

Achtung: beide loescht vorhandene Farben oder Linien.
gruss hary
Anzeige
AW: Aktive Zelle / gesamte Zeile selektieren
26.01.2011 10:23:43
Klaus
Hallo Hary!
Besten Dank für deinen tollen Tip - habe zwar Farben, aber das kann ich auch anders lösen.
SG
Klaus
AW: Aktive Zelle / gesamte Zeile selektieren
26.01.2011 10:23:59
Klaus
Hallo Hary!
Besten Dank für deinen tollen Tip - habe zwar Farben, aber das kann ich auch anders lösen.
SG
Klaus
AW: Aktive Zelle / gesamte Zeile selektieren
26.01.2011 10:33:23
hary
Hallo Klaus
dann nimm doch den Rahmen.
gruss hary
Anzeige
AW: Aktive Zelle / gesamte Zeile selektieren
26.01.2011 12:07:21
Josef

Hallo Klaus,
eine Andere Möglichkeit. Achte wohin der Code gehört!
Mit [Strg] + [M] kannst du die markierung an/abschalten.

' **********************************************************************
' Modul: DieseArbeitsmappe Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

Option Explicit

Private Sub Workbook_BeforeClose(Cancel As Boolean)
  Application.OnKey "^m"
End Sub

Private Sub Workbook_Open()
  Application.OnKey "^m", "ToggleState"
End Sub

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
  On Error GoTo ErrExit
  Application.EnableEvents = False
  
  If bolState Then
    Union(Target(1, 1).EntireRow, Target(1, 1).EntireColumn).Select
    Target(1, 1).Activate
  End If
  
  ErrExit:
  Application.EnableEvents = True
End Sub

' **********************************************************************
' Modul: Modul1 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Public bolState

Sub ToggleState()
  bolState = Not bolState
End Sub

Gruß Sepp

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Aktive Zelle und gesamte Zeile in Excel selektieren


Schritt-für-Schritt-Anleitung

Um in Excel die aktive Zelle und die gesamte Zeile zu markieren, kannst Du den folgenden VBA-Code verwenden. Dieser Code sorgt dafür, dass die gesamte Zeile, in der sich die aktive Zelle befindet, hervorgehoben wird, während die aktive Zelle weiterhin für die Bearbeitung verfügbar bleibt.

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Wähle das entsprechende Arbeitsblatt im Projektfenster aus.

  3. Füge den folgenden Code in das Codefenster ein:

    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
        Dim rng As Range
        Set rng = Target.EntireRow
        rng.Interior.ColorIndex = 8  ' Die Zeile wird hervorgehoben
    
        ' Die aktive Zelle bleibt aktiv
        Target.Select
    End Sub
  4. Schließe den VBA-Editor und kehre zu Deinem Arbeitsblatt zurück.

Jetzt wird jedes Mal, wenn Du eine Zelle auswählst, die gesamte Zeile hervorgehoben, während die aktive Zelle für Bearbeitungen bleibt.


Häufige Fehler und Lösungen

  • Problem: Die Zeile wird hervorgehoben, aber die aktive Zelle ist nicht mehr auswählbar.

    • Lösung: Achte darauf, dass Du die Zeile auswählst und anschließend Target.Select verwendest, um die aktive Zelle beizubehalten.
  • Problem: Vorhandene Farben oder Linien werden beim Ausführen des Codes gelöscht.

    • Lösung: Verwende eine Methode mit Rahmen, anstatt die Hintergrundfarbe zu ändern, falls Du bestehende Formatierungen beibehalten möchtest.
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
        Cells.Borders(xlInsideHorizontal).LineStyle = xlNone
        ActiveCell.EntireRow.Borders(xlEdgeBottom).LineStyle = xlContinuous
        ActiveCell.EntireRow.Borders(xlEdgeTop).LineStyle = xlContinuous
    End Sub

Alternative Methoden

Eine andere Möglichkeit, die aktive Zeile in Excel hervorzuheben, besteht darin, eine Tastenkombination zu verwenden:

  1. Füge den folgenden Code in ein allgemeines Modul ein:

    Public bolState As Boolean
    
    Sub ToggleState()
        bolState = Not bolState
    End Sub
    
    Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
        On Error GoTo ErrExit
        Application.EnableEvents = False
    
        If bolState Then
            Union(Target(1, 1).EntireRow, Target(1, 1).EntireColumn).Select
            Target(1, 1).Activate
        End If
    
    ErrExit:
        Application.EnableEvents = True
    End Sub
  2. Mit Strg + M kannst Du die Markierung aktivieren oder deaktivieren.


Praktische Beispiele

  • Beispiel 1: Wenn Du die Zelle AH1235 auswählst, wird die gesamte Zeile 1235 hervorgehoben, und die Zelle bleibt aktiv, sodass Du den Inhalt bearbeiten kannst.

  • Beispiel 2: Du kannst den Rahmen um die aktive Zeile verwenden, um die visuelle Klarheit zu erhöhen, ohne die Hintergrundfarben zu verändern.


Tipps für Profis

  • Experimentiere mit verschiedenen ColorIndex-Werten, um unterschiedliche Farben für die Hervorhebung zu verwenden.
  • Verwende Kombinationen aus Rahmen und Farben, um Deine Daten noch übersichtlicher zu gestalten.
  • Denke daran, Deine VBA-Projekte regelmäßig zu speichern, um Änderungen nicht zu verlieren.

FAQ: Häufige Fragen

1. Wie kann ich die Hintergrundfarbe einer aktiven Zeile wieder zurücksetzen? Um die Hintergrundfarbe zurückzusetzen, kannst Du den folgenden Code verwenden, um alle Zellen zu löschen:

With Cells
    .Interior.ColorIndex = xlNone
End With

2. Funktioniert dieser Code in allen Excel-Versionen? Ja, dieser VBA-Code sollte in den meisten modernen Excel-Versionen funktionieren, solange VBA unterstützt wird. Stelle sicher, dass Deine Excel-Version die Verwendung von Makros erlaubt.

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