エクセルで選択したセルの列と行をハイライトする。「クロスヘアカーソル」の設定方法。
Contents
「エクセル、十字、行、列、ハイライト」などのキーワードで検索すれば、
多分いろいろと情報が出てくるのですが、2,3ページハシゴする必要があるので、自分用にまとめました。
最初に考えてくれた方に感謝の意を表します。
設定する項目は2つ。
- 条件付き書式の設定
- VBAの追加
(1)条件付き書式の設定
クリックしたセルの行、列をハイライトさせる「条件付き書式」
行、列ともにハイライトする。(縦横方向の十字)
=OR(CELL("ROW")=ROW(),CELL("COL")=COLUMN())
行だけはハイライトする。(横方向の一列)
=OR(CELL("ROW")=ROW())
列だけハイライトする。(縦方向の一列)
=OR(CELL("COL")=COLUMN())
条件が満たされたときに、セルの色が塗りつぶされるように書式を設定。太字にする、とかでもOKっす。
適用範囲の指定。(下記はシート全体をさしています。)
範囲指定として、エクセルシートの左上の三角マークの付いたセルをクリックすると、シート全体が範囲指定されて下記のように設定される。
ハイライトさせる範囲に合わせて設定する。
VBAの追加
必須ではないですが、使い勝手が全然変わってくるのでVBAの追加をします。
VBA を追加する。
VBA を追加する理由は、選択中のセルが切替わる度にシートを更新しないと、条件付き書式が反映されないので面倒くさいからです。VBAでリアルタイム更新するようになります。
開発タブ >Visual Basic
開発タブが表示されていない場合は、
ファイル> その他> オプション>「リボンのユーザー設定」
を開いて、開発にチェックを入れます。
対象のシート名を選択して、コードを貼り付け。
(貼り付ける先の画面が出てない場合は、シート名をダブルクリックする)
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.ScreenUpdating = True
End Sub
VBA を追加すると、エクセルファイルの拡張子をxlsm に変更しないと、VBA が保持されないので、それもそれで面倒くさいですが、xlsm 形式は多分遠慮されがちです。
個人的には、次回ファイルを開いたときに、再度VBA のコードを追加する必要がありますが、そのままマクロを保持しない状態で現在のまま保存をするのが良いかと思います。
以上。