Home » ExcelVBA Rangeオブジェクト » SpecialCellsメソッド » 数式の入力されているセルに色をつけるExcelマクロ

数式の入力されているセルに色をつけるExcelマクロ

対象:Excel2003, Excel2007, Excel2010, Excel2013

「エクセル2010 式が入っていれば色をつける関数を作る vba」
という検索で、このサイト・インストラクターのネタ帳へのアクセスがありました。

数式の入力されているセルを目立つように色をつけたい、ということなのでしょう。

「関数を作る」という語句が入っていますから、VBAでユーザー定義関数を作ることを想定しているのかもしれませんが、関数だけで色をつけることはできません。

[スポンサードリンク]

数式の入力されているセルに色をつけるには、いくつかの方法が考えられますが、まずは一番シンプルな、数式の入力されているセルに色をつけるマクロをご紹介しておきます。


Sub アクティブシートの数式の入力されているセルに色をつける()
 On Error GoTo ERR_HANDL
 Cells.SpecialCells(xlCellTypeFormulas).Interior.Color _
  = RGB(255, 255, 0)
 Exit Sub

ERR_HANDL:
 Select Case Err.Number
  Case 1004
   MsgBox "数式の入力されているセルは存在しません。"
  Case Else
   MsgBox "エラーが発生しました。"
 End Select
End Sub

実際に色をつけているのは、
 Cells.SpecialCells(xlCellTypeFormulas).Interior.Color _
  = RGB(255, 255, 0)
の部分です。

ジャンプ機能を使って数式の入力されているセルを選択する方法をご紹介しています。その操作をマクロ記録してできたコードを参考にして作ったのが上記のコードです。

プログラミングはできるけれど、Excelの機能をご存じない方の場合、セルを順番にチェックしていくようなループ処理を思いついてしまうかもしれませんが、ループを回さなくても数式の入力されているセルは簡単に調べることができるのです。

RangeオブジェクトのSpecialCellsメソッドの引数にxlCellTypeFormulasを指定すると、数式の入力されているセルが取得できますから、そのInterior.ColorをRGB(255, 255, 0)とRGB関数を使って指定しています。

ただし、
 Cells.SpecialCells(xlCellTypeFormulas).Interior.Color _
  = RGB(255, 255, 0)
だけでは、数式の入力されているセルが存在していないときにエラーとなってしまいます。

そこで
 On Error GoTo ERR_HANDL
でエラー処理を入れています。

[スポンサードリンク]

Home » ExcelVBA Rangeオブジェクト » SpecialCellsメソッド » 数式の入力されているセルに色をつけるExcelマクロ

TrackBack:0

TrackBack URL

Home » ExcelVBA Rangeオブジェクト » SpecialCellsメソッド » 数式の入力されているセルに色をつけるExcelマクロ

Copyright © インストラクターのネタ帳 All Rights Reserved.

.