【VBA】選択された行に自動で色を付ける方法|行の視認性を高めるExcelマクロ

目次

経緯

Excelで作業をしていると、列数が多すぎてどの行を見ていたのか分からなくなることがあります。
特に横スクロールや縦に長い表では、選択しているセルが含まれる行を見失いがちです。

そこで、現在選択中の行に自動で色を付けるVBAコードを使えば、視認性が一気に向上します。
今回は、その具体的な方法をご紹介いたします。


使用するのは「Worksheet_SelectionChange」イベント

以下は、対象のシートで選択された行を黄色に塗りつぶし、前の行の色を元に戻すコードです。
そのままコピペで使用可能です。

Private PreviousRow As Range

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    ' 前回選択されていた行の色を元に戻す
    If Not PreviousRow Is Nothing Then
        PreviousRow.Interior.ColorIndex = xlNone
    End If

    ' 現在選択されている行を黄色にする
    Target.EntireRow.Interior.Color = RGB(255, 255, 0)

    ' 現在の行を記憶しておく
    Set PreviousRow = Target.EntireRow
End Sub

実装手順

  1. Excelを開き、「Alt + F11」でVBAエディタを起動します
  2. 左側のプロジェクトエクスプローラで、対象のワークシート(例:「Sheet1」)をダブルクリック
  3. 上記コードを、そのシートのコードウィンドウに貼り付けます
  4. 上書き保存して、Excelに戻るとすぐ反映されます

※このコードは、選択中の行が常に黄色でハイライトされ、他の行を選択すると前の行の色が元に戻ります。


カスタマイズ例(色を変えたい場合)

RGB(255, 255, 0) の部分を以下のように変更すると、異なる色にできます。

  • 青:RGB(173, 216, 230)
  • 緑:RGB(144, 238, 144)
  • グレー:RGB(211, 211, 211)

好みに合わせて調整してみてください。


まとめ

Excelで選択中の行に自動で色をつける方法をVBAで実装することで、作業時の見失いを防ぐことができます。
特に業務用の広いデータ表や分析用シートなどで有効なテクニックです。

非常にシンプルなコードで効果的な改善ができるので、ぜひ取り入れてみてください。
最後までお読みいただき、ありがとうございました。

スクールの紹介

最後に宣伝をさせてください。

夢見るAIエンジニアへ、今こそ一歩を踏み出せ!

最近、AI技術やデータサイエンスに興味を持ち始めたあなた。将来、AIエンジニアやデータサイエンティストとして活躍したいと考えているかもしれません。また、AIを使って業務課題や研究課題を解決したい、あるいは教養としてAIの知識を深めたいと思っている方もいるでしょう。

しかし、学び始めるとなると「どこから手をつけて良いのか分からない」「専門的すぎて理解できない」といった悩みが生じることも。そんなあなたのために、この3ヶ月間集中してAIプログラミングを習得するオンラインコーチングサービスがオススメです!

なぜこのサービスが選ばれるのか?その理由はこちら

  1. 初心者から上級者まで
    完全なプログラミング初心者から研究者まで、幅広い方々に優良なコンテンツが提供されます。
  2. 徹底的な進捗管理
    受講者の進捗をしっかりとチェックし、つまずきやすいポイントでのフォローが万全です。
  3. 専属メンターによる徹底サポート
    AIの学び方から、実際の適用まで、専属のメンターが手厚くサポートします。
  4. 場所を選ばず学べるオンライン完結
    東京以外の地域からも、気軽に学び始めることができます。

信頼の実績多数!
・日本最大級のプログラミングスクール実績
・受講者総数700名以上
・SaaS型学習サービス会員65,000名以上
・企業導入実績120社以上
・グッドデザイン賞受賞
・著名な賞受賞歴や経団連加盟も実現

夢を叶えるための第一歩を、一緒に踏み出しませんか?今なら、あなたもその一員として学び始めることができます!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

私が勉強したこと、実践したこと、してることを書いているブログです。
主に資産運用について書いていたのですが、
最近はプログラミングに興味があるので、今はそればっかりです。

目次