Excelで、Ctrlキーを押しながら複数の箇所を選択すると離れた範囲でも選択できますが、
間違えたセルを選択してしまった場合にはキャンセルができません。
(Ctrlを押しながら、再び選択すれば何とかなると思っていたのですが、できませんでした)
すでに選択してある範囲から、不必要な範囲を除外する方法はありますか?
※ 再び、ゼロから選択しなおすのは、めんどくさい場合があるのです。
B3からE7までガバッと選択した後に、C4からD5までを選択範囲から外すという方法でも構いません。
ご存知の方いらっしゃいましたら、よろしくお願いいたします。
かなり以前に某所に書き込みがあって、古いPCのExcel97に残っていましたので引用します。
元ソースは、パソコン通信時代(Nifty-Serve)のもので、1996/9/25と10年前にみさごさんという方が書き込まれていました、私の環境Excel2003でもマクロとして動作確認しました。
1の回答で田中さんのサイトにあるSIMOさんの回答も、元は同じ所に書き込まれてたもののようです。
解除したいセルを選択してこのマクロを実行してください。
現在のアクティブセル以外を再選択するような処理でしょうか?自分ではとうてい思いつきませんが...
--引用ここから --
Sub Ununion()
Dim eRange As Range
Dim retRange As Range
If Selection.Areas.Count = 1 Then Exit Sub
For Each eRange In Selection.Areas
If Intersect(eRange, ActiveCell) Is Nothing Then '<---(*)
If retRange Is Nothing Then
Set retRange = eRange
Else
Set retRange = Union(retRange, eRange)
End If
End If
Next
retRange.Select
End Sub
#(*) の部分を、Union(eRange,ActiveCell).Areas.Count<>1 で判断すると、
# 上記のものとは異なるルールで Area が除去されます。
---引用ここまで---------------------
複数セルを選択する際の手抜きの方法として、同じく田中さんのTipsですが..(Shift+F8を押下後、選択)
ありがとうございます。
実行してみました。
エリア選択をUNDO(?)することができるのですね。
VBAを使うということは、やはりExcelのデフォルトの機能として、一度選択した範囲を解除する方法は存在しないのでしょうか?
申し訳ありませんが「一度選択した範囲を解除する方法」は他に知りません。
ただし、要件によってはそのような間違いをしにくくする方法はあります。
すでにご存じのことでしたら、すみません。
その選択するセルが毎回変わらないなら
http://www.eurus.dti.ne.jp/yoneyama/Excel/ex-q-a/q_cell.html#nam...
↑では、名前ボックスに直接入力していますが、同じ事です。
その選択するセルが数式のみ、文字のみ、文字と数字のみのような場合
http://www.eurus.dti.ne.jp/yoneyama/Excel/ex-q-a/q_cell.html#jam...
要件が合えば、この代替え案で大丈夫かもしれませんが、合わなければ...わかりません。m(__)m
再び回答していただき、ありがとうございます。
下でご紹介いただいた方法は知りませんでした。
このようなExcelの小ネタは大好きです。
しかし、やっぱり選択されたセルの選択を解除する方法はないのですね~。
その方法がないことがわかっただけでも、今回の質問は有意義だったと思います。
回答いただいたeuropeo様、kaiton様ありがとうございました。
これで、質問を終了させていただきます。
ウォッチリストに登録していただいた方もありがとうございます。
同様の問題に悩んでいる方が多くいることがわかり、勇気づけられました。
ありがとうございます。
Excelの機能を知り尽くしてればこそのテクニックですね。
しかし、もう少し手軽に行なうことはできないでしょうか? 片手キーボード、片手マウスのままでできる操作だと、理想的なのですが……。
せっかくご回答いただいたのに申し訳ありません。
もう少し回答を待ってみたいと思います。