キーボードショートカットを使用して、複数のExcelセルを選択することができます(連続的にもそうでなくても)。 Ctrl+クリック.
これらの以前に選択したセルの1つ以上をどのように選択解除しますか?
ShiftキーやCtrlキーを使って、連続していない範囲を選択できます。ただし、誤ってセルまたは領域を選択した場合、選択範囲全体を失うことなく最初からやり直すことなく、選択範囲からそれらを削除する方法は組み込まれていません。 このページ は、現在の選択からアクティブセルまたはアクティブセルを含む領域を削除するUnSelectActiveCellとUnSelectCurrentAreaについて説明します。選択範囲内の他のすべてのセルは選択されたままになります。
Excelで開いているすべてのブックで利用できるように、個人用マクロブックにこれらを追加することをお勧めします。
この手続きは選択範囲からアクティブセルを削除します。
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
この手順はアクティブセルを含む領域を選択範囲から削除します。
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
ExtendOfficeの記事 に、複数セルの選択を解除するためのより堅牢な方法が説明されています。追加のプロンプトは含まれますが、任意の数のセル/選択を一度に選択解除することができます(アクティブなセルまたは領域だけを選択解除する代わりに)。
私はここにスクリプトを投稿しています、使いやすさを少し改善しています(最初の投稿から条件付きで余分な最初のプロンプトを削除しました):
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
これを使用するには、選択を行い、DeselectCells
マクロ(個人用マクロブックに保存してショートカットに割り当てるのが最善です)を呼び出し、セルをdeに選択します。表示されるポップアップで選択します。
誤って選択されたセルをCTRLで選択解除することが可能になりました。これは、Office 365または最近のバージョンに新しく組み込まれた機能です。最後に!