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á nenhuma maneira de removê-la da seleção sem perder a seleção inteira e ter que começar de novo. Esta página descreve os procedimentos VBA, UnSelectActiveCell e UnSelectCurrentArea que removerão a célula ativa ou a área que contém a célula ativa de a seleção atual. Todas as outras células da seleção permanecerão selecionadas.
Sua melhor aposta seria adicioná-los à sua pasta de trabalho Macro pessoal para que eles estão 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