Klavye Kısayolunu kullanarak Excel Cell seçimini nasıl kaldırırım?


14

Klavye kısayolunu Ctrl+ Tıklama'yı kullanarak birden fazla Excel hücresi (bitişik olarak veya değil) seçilebilir .

Önceden seçilen bu hücrelerin bir veya daha fazlasının seçimini nasıl kaldırırsınız?

Yanıtlar:


5

ÜST KARAKTER ve / veya CTRL tuşlarını kullanarak bitişik olmayan aralıkları seçebilirsiniz. Ancak, yanlışlıkla bir hücre veya alanı seçerseniz, tüm seçimi kaybetmeden ve baştan başlamak zorunda kalmadan seçimden kaldırmanın yerleşik bir yolu yoktur. Bu sayfada , Etkin Hücreyi veya Etkin Hücreyi içeren Alanı geçerli seçimden kaldıracak VBA yordamları, UnSelectActiveCell ve UnSelectCurrentArea açıklanmaktadır. Seçimdeki diğer tüm hücreler seçili kalacaktır.

En iyi seçeneğiniz, bunları Excel'deki tüm açık çalışma kitaplarında kullanılabilmeleri için Kişisel Makro çalışma kitabınıza eklemek olacaktır.

Bu prosedür, Etkin Hücreyi Seçimden kaldıracaktır .

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

Bu yordam, Etkin Hücreyi içeren Alanı Seçimden kaldıracaktır.

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

1
Eğer UnSelectActiveCellaralıkları ile sendika eğer daha hızlı yapabilir ve sadece eğer hücreler arasında döngü merak ediyorum Not Intersect(Area,ActiveCell) Is Nothing. Eğer durum olmayabilir Intersectfonksiyonu çok daha yavaş olduğunu StrCompişlevin o çağrıları azalmayı dengelemek olamaz Union.
Mühendis Tost

1
Tanrı excel olur yani eski lol
codyc4321

Bu hala geçerli mi? Yaşamım için deselectbir hücreye nasıl ulaşacağımı bulamıyorum . Kesinlikle çok saçma! Her 2 sütunu seçiyorum ve bir hata yaparsam baştan başlamam gerekir mi? Bu% & * deli oluyor!
pookie

2

Birden çok hücrenin seçimini kaldırmanın daha sağlam bir yolu bu ExtendOffice makalesinde açıklanmaktadır . Fazladan bir istem içerir, ancak aynı anda rastgele sayıda hücrenin / seçimin seçimini kaldırabilirsiniz (yalnızca etkin hücrenin veya alanın seçimini kaldırmak yerine)

Komut dosyasını burada, küçük bir kullanılabilirlik iyileştirmesi ile gönderiyorum (koşullu olarak orijinal ilkinden gereksiz ilk istemi kaldırıldı):

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

, Sen çağırmak, bir seçim yapmak Kullanmak için DeselectCells(Kişisel makro kitapta kaydedilir ve bir kısayol atanacak en iyisidir) makro ve hücreleri seçmek üzere de açılır göründüğünü seçilen:

Hücrelerin seçimini kaldır


Güzel bulmak, harika cevap.
Burgi

1

Artık yanlışlıkla seçilen bir hücrenin CTRL'si ile seçimi kaldırılabilir. Office 365 veya son sürümlerde yeni bir yerleşik işlevdir. En sonunda!

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.