Excel・VBA

【Excel】選択中の行や列を強調(ハイライト)する方法

2018/09/29

Excelで選択中の行や列、またはセルを強調(ハイライト)する方法を紹介します。
少し難しい内容が含まれますが、画像の通りにやっていけば設定出来るようになります。
highlight

例として、シフト表を作成しました。
「縦に人の名前、横に日付」というレイアウトです。
1

条件付き書式を設定する

まず、どのような時にハイライトするかを設定します。

条件付き書式のルールを設定

リボンの[ホーム] → [スタイル] → [条件付き書式] → [ルールの管理]を選択
2

条件付き書式ルールの管理

[新規ルール]をクリック
2-5

条件付き書式のルールの式を設定

ルールの種類を[数式を使用して、書式設定するセルを決定]を選択し、
「次の数式を満たす場合に値を書式設定」のところに以下の式を入力します。
=OR(CELL("ROW")=ROW(), cell("COL")=COLUMN())

3

他のパターンはコチラ
・行だけを強調する場合
=CELL("ROW")=ROW()
・列だけを強調する場合
=cell("COL")=COLUMN()
・セルだけを強調する場合
=AND(CELL("ROW")=ROW(), cell("COL")=COLUMN())

強調するデザインを設定

[書式]ボタンをクリック。
4

[塗りつぶし]タブ → 背景色を選択 → [OK]ボタン
今回は背景色をつけるだけですが、罫線を引いたり文字を大きくしたりということも可能です。
5

式と書式が設定されていることを確認し、[OK]ボタンをクリック
6

適用範囲を選択

[適用先]列の右端にあるボタンを押します
7

適用させたい範囲をドラッグします。範囲が決まったら、先程押した右端のボタンを再度押します。
今回例にあげているシフト表は、表全体を選択しました(点線が選択範囲です)
8

[適用先]列に、今選択した範囲が設定されていることを確認して、[OK]を押します。
9

さて、この時点で行と列に色が付きますがこれで終わりではありません。
このままだとセルを移動しても、移動した先に色が付きません。
なので、セルを移動するたびに色をつける命令を書き加えます。
そこで登場するのがマクロになります。

マクロを書く

[Alt] + [F11]を押してマクロのエディタを開きます。
↓こんなやつです
11

左側のペインから、「ThisWorkbook」をダブルクリックします。
そうすると、真ん中のペインに「Book1.xlsx - ThisWorkbook(コード)」という名前のウィンドウが出てきます。
12

その中に、以下のコードを貼り付けて下さい。
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Application.ScreenUpdating = True
End Sub

フロッピーディスクのマークをクリック(または[Ctrl]+[S])します。
13

そうすると、このような選択肢が出てきます。
いいえを選択して下さい。
14

これは何かというと、
「マクロの機能を利用する場合はファイルの種類を変更してね!」と言っているのです。
ファイルの種類というのは一言で言えば拡張子です。
同じエクセルファイルでも、「.xls」とか「.xlsx」とかありますよね。それです。

保存ダイアログが出てくるので、[ファイルの種類]を「Excelマクロ有効ブック(*.xlsm)」にします。
15

名前を付けて、[保存]を押します。
16

保存が完了したら、マクロのエディタを右上の×ボタンから閉じます。

動作確認

色々なところをクリックしてみて、選択中の行と列が強調表示されるか確認してみて下さい。
highlight

まとめ

条件付き書式とマクロという、馴染みの無い方には少し難しいものが登場しました。
ですがどちらもExcelを上手に使いこなす上では必要なものです。
難しいですが、こういった機能は組み込むと視覚的に楽しめていいですね!




-Excel・VBA