Wie hebe ich die Auswahl von Excel-Zellen mithilfe der Tastenkombination auf?

14

Über die Tastenkombination Ctrl+ Klicken können mehrere Excel-Zellen (entweder zusammenhängend oder nicht) ausgewählt werden .

Wie heben Sie die Auswahl einer oder mehrerer dieser zuvor ausgewählten Zellen auf?

ahmednabil88
quelle

Antworten:

5

Mit der UMSCHALTTASTE und / oder der STRG-Taste können Sie nicht zusammenhängende Bereiche auswählen. Wenn Sie jedoch versehentlich eine Zelle oder einen Bereich auswählen, gibt es keine Möglichkeit, diese aus der Auswahl zu entfernen, ohne die gesamte Auswahl zu verlieren und von vorne beginnen zu müssen. Diese Seite beschreibt die VBA-Prozeduren UnSelectActiveCell und UnSelectCurrentArea, mit denen die aktive Zelle oder der Bereich mit der aktiven Zelle aus der aktuellen Auswahl entfernt werden. Alle anderen Zellen in der Auswahl bleiben ausgewählt.

Am besten fügen Sie diese zu Ihrer persönlichen Makro-Arbeitsmappe hinzu, damit sie für alle geöffneten Arbeitsmappen in Excel verfügbar sind.

Durch diesen Vorgang wird die aktive Zelle aus der Auswahl entfernt .

Sub UnSelectActiveCell()
    Dim R As Range
    Dim RR As Range
    For Each R In Selection.Cells
        If StrComp(R.Address, ActiveCell.Address, vbBinaryCompare) <> 0 Then
            If RR Is Nothing Then
                Set RR = R
            Else
                Set RR = Application.Union(RR, R)
            End If
        End If
    Next R
    If Not RR Is Nothing Then
        RR.Select
    End If
End Sub

Durch diesen Vorgang wird der Bereich mit der aktiven Zelle aus der Auswahl entfernt.

Sub UnSelectCurrentArea()
    Dim Area As Range
    Dim RR As Range

    For Each Area In Selection.Areas
        If Application.Intersect(Area, ActiveCell) Is Nothing Then
            If RR Is Nothing Then
                Set RR = Area
            Else
                Set RR = Application.Union(RR, Area)
            End If
        End If
    Next Area
    If Not RR Is Nothing Then
        RR.Select
    End If
End Sub
Kumpel
quelle
1
Ich frage mich, ob Sie UnSelectActiveCellschneller machen können, wenn Sie durch Bereiche vereinen und nur durch die Zellen schleifen, wenn Not Intersect(Area,ActiveCell) Is Nothing. Dies ist möglicherweise nicht der Fall, wenn die IntersectFunktion so viel langsamer als die StrCompFunktion ist, dass die Reduzierung der Anrufe an nicht ausgeglichen werden kann Union.
Ingenieur Toast
1
God Excel ist so alt, lol
codyc4321
Ist das noch der Fall? Ich kann für mein Leben nicht herausfinden, wie man in deselecteine Zelle kommt. Es ist absolut lächerlich! Ich wähle jede 2. Spalte aus und wenn ich einen Fehler mache, muss ich von vorne anfangen? Das ist doch verrückt!
Pookie
2

Eine robustere Methode zum Aufheben der Auswahl mehrerer Zellen wird in diesem ExtendOffice-Artikel beschrieben . Es enthält zwar eine zusätzliche Eingabeaufforderung, Sie können jedoch die Auswahl einer beliebigen Anzahl von Zellen / Auswahlen auf einmal aufheben (anstatt nur die Auswahl der aktiven Zelle oder des aktiven Bereichs aufzuheben).

Ich veröffentliche das Skript hier mit einer kleinen Verbesserung der Benutzerfreundlichkeit (die redundante erste Eingabeaufforderung wurde aus dem ursprünglichen Beitrag bedingt entfernt):

Sub DeselectCells()
    Dim rng As Range
    Dim InputRng As Range
    Dim DeleteRng As Range
    Dim result As Range
    xTitleId = "Deselect Cells"

    Set InputRng = Application.Selection
    If InputRng.Count <= 1 Then
        Set InputRng = Application.InputBox("Range :", xTitleId, InputRng.Address, Type:=8)
    End If
    Set DeleteRng = Application.InputBox("Delete Range", xTitleId, Type:=8)
    For Each rng In InputRng
        If Application.Intersect(rng, DeleteRng) Is Nothing Then
            If result Is Nothing Then
                Set result = rng
            Else
                Set result = Application.Union(result, rng)
            End If
        End If
    Next
    result.Select
End Sub

Um es zu nutzen, können Sie eine Auswahl zu treffen, rufen Sie das DeselectCellsMakro (die eine Verknüpfung in Ihrer persönlichen Makro - Buch und zugeordnet gespeichert ist am besten werden) , und die Zellen ausgewählt werden , de im Popup ausgewählt , die angezeigt wird :

Zellen abwählen

Giovanni
quelle
Netter Fund, tolle Antwort.
Burgi
1

Es ist jetzt möglich, die Auswahl einer versehentlich ausgewählten Zelle mit STRG aufzuheben. Es ist eine neu eingebaute Funktion in Office 365 oder neueren Versionen. Schließlich!

Steve
quelle