Allanは多くの条件付き書式を使用し、ほとんどの場合、数式を使用して書式の条件を指定します。最近、彼は偶然、彼が#REFを持っていることを発見しました!彼の条件付きフォーマット式の1つにエラーがあります。アランが理解できる限り、これは数式で参照されているセルの行を削除した結果でした。影響は、条件付き書式がその条件では機能しないことです。これにより、Allanは、最初に設定されてから破損した条件付きフォーマットの他のインスタンスがあることを懸念しています。彼は、これらのエラーを簡単に見つけることができるように、すべての条件付き書式をチェックする簡単な方法があるかどうか疑問に思います。

最良の方法は、マクロを使用して、ワークシートに定義されているすべての条件付きフォーマットをステップスルーすることです。次のマクロはまさにそれを行い、#REFを探します!数式のエラー。

Sub FindCorruptConditionalFormat()

Dim c As Range     Dim fc As Variant

Selection.SpecialCells(xlCellTypeAllFormatConditions).Select     For Each c In Selection.Cells         For Each fc In c.FormatConditions             If InStr(1, fc.Formula1, "#REF!", _               vbBinaryCompare) > 0 Then                 MsgBox Prompt:=c.Address & ": " _                   & fc.Formula1, Buttons:=vbOKOnly             End If         Next fc     Next c End Sub

エラーが見つかった場合は、セルのアドレスと条件付き書式ルールで使用されている数式の両方がメッセージボックスに表示されます。

注:

このページ(または_ExcelTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。

link:/ excelribbon-ExcelTipsMacros [ここをクリックして、新しいブラウザタブでその特別なページを開きます]

_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。

このヒント(11361)は、Microsoft Excel 2007、2010、2013、2016、2019、およびOffice 365のExcelに適用されます。Excelの古いメニューインターフェイス用のこのヒントのバージョンは、次の場所にあります。

link:/ excel-Detecting_Errors_in_Conditional_Formatting_Formulas [条件付き書式式のエラーの検出]