Pode-se selecionar várias células do Excel (contígua ou não) usando o atalho de teclado Ctrl+ Clique.
Como você desmarca uma ou mais dessas células selecionadas anteriormente?
fonte
Pode-se selecionar várias células do Excel (contígua ou não) usando o atalho de teclado Ctrl+ Clique.
Como você desmarca uma ou mais dessas células selecionadas anteriormente?
Usando as teclas SHIFT e / ou CTRL, você pode selecionar intervalos não contíguos. No entanto, se você selecionar uma célula ou área por engano, não haverá uma maneira integrada de remover isso da seleção sem perder a seleção inteira e ter que começar de novo. Esta página descreve os procedimentos do VBA, UnSelectActiveCell e UnSelectCurrentArea que removerão a célula ativa ou a área que contém a célula ativa da seleção atual. Todas as outras células na seleção permanecerão selecionadas.
Sua melhor aposta seria adicioná-las à sua pasta de trabalho Macro pessoal para que estejam disponíveis para todas as pastas de trabalho abertas no Excel.
Este procedimento removerá a célula ativa da seleção .
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
Este procedimento removerá a área que contém a célula ativa da seleção.
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
UnSelectActiveCell
mais rápido se você se unir por intervalos e apenas percorrer as células seNot Intersect(Area,ActiveCell) Is Nothing
. Pode não ser o caso se aIntersect
função for muito mais lenta que aStrComp
função que não pode compensar a redução nas chamadas paraUnion
.deselect
uma célula. É absolutamente ridículo! Estou selecionando cada segunda coluna e se eu cometer um erro, devo começar de novo? Isso é% & * ing insano!Uma maneira mais robusta de desmarcar várias células é descrita neste artigo ExtendOffice . Ele inclui um prompt extra, mas você pode desmarcar um número arbitrário de células / seleções de uma só vez (em vez de desmarcar apenas a célula ou área ativa)
Estou postando o script aqui, com uma pequena melhoria na usabilidade (removida condicionalmente o primeiro prompt redundante da postagem original):
Para usá-lo, você faz uma seleção, invocar a
DeselectCells
macro (que é melhor para ser salvo em seu livro de macro pessoal e atribuído a um atalho) e selecione as células a serem de selecionada no pop-up que aparece:fonte
Agora é possível desmarcar com CTRL uma célula selecionada por engano. É uma nova função interna do Office 365 ou versões recentes. Finalmente!
fonte