Excel VBA アイコンセットを表示する条件付き書式を設定する

スポンサーリンク
スポンサーリンク

アイコンセットを表示する条件付き書式を設定する方法

指定したセル範囲の値を元に、そのデータの大きさによって
異なるアイコンを表示してデータの視認性を高めるには
条件付き書式のオブジェクトの一つである
アイコンセットの種類やしきい値などの設定を表す
IconSetCondition【アイコンセットコンディション】オブジェクト
各プロパティを使用してアイコンを設定します。

AddIconsetCondition
【アドアイコンセットコンディション】メソッド

アイコンセットの種類やしきい値などの設定を表す
IconSetCondition【アイコンセットコンディション】オブジェクトを取得するには
条件付き書式の集まりを表す
FormatConditions【フォーマットコンディションズ】コレクションの
AddIconsetCondition【アドアイコンセットコンディション】メソッドを使用します。

FormatConditions.AddIconsetCondition
【フォーマットコンディションズアドアイコンセットコンディション】メソッドの書式

オブジェクト.FormatConditions.AddIconsetCondition


設定値の説明

  • オブジェクト(必須)
    アイコンセットを設定する値があるセルまたはセル範囲を
    Rangeオブジェクトで指定します。

Delete【デリイト】メソッド

条件付き書式を削除するには
条件付き書式の集まりを表す
FormatConditions【フォーマットコンディションズ】コレクションの
Delete【デリイト】メソッドを使用します。
1つのセルに条件付き書式を追加すると
既に条件付き書式が設定されている場合は
既にある条件付き書式に加えて
新しい条件付き書式が追加されます。
複数の条件付き書式を設定するのでなければ
指定範囲に条件付き書式が設定されているされていないに
関わらずDelete【デリイト】メソッドを使用して
不要な条件付き書式を削除してから
新しい条件付き書式を追加します。

FormatConditions.Delete【フォーマットコンディションズデリイト】メソッドの書式

オブジェクト.FormatConditions.Delete


  • オブジェクト(必須)
    アイコンセットを設定するセルまたはセル範囲を
    Rangeオブジェクトで指定します。

IconSetCondition【アイコンセットコンディション】オブジェクトの主なプロパティ

プロパティ内容
IconSet【アイコンセット】条件付き書式で使用するアイコンセットを指定します。
IconCriteria【アイコンクライテリア】条件付き書式ルールの条件セットを取得します。
ShowIconOnly【ショウアイコンオンリー】条件付き書式に対してアイコンのみ表示するか
しないかを設定します。
ReverseOrder【リバースオーダー】アイコンセットの順番を逆にするか
しないかを設定します。

IconSet【アイコンセット】プロパティ

条件付き書式で使用するアイコン セットの集まりを表す
IconSets【アイコンセッツ】コレクションを取得するには
アイコンセットの種類やしきい値などの設定を表す
IconSetCondition【アイコンセットコンディション】オブジェクトの
IconSet【アイコンセット】プロパティを使用します。

IconSet【アイコンセット】プロパティの書式

オブジェクト.IconSet = ActiveWorkbook.IconSets( 定数 )


設定値(引数)の説明

  • オブジェクト(必須)
    AddIconsetCondition【アドアイコンセットコンディション】メソッドで取得した
    IconSetCondition【アイコンセットコンディション】オブジェクトを指定します。
  • 定数(必須)
    アイコンセットの種類をXlIconSet列挙型の定数または値で指定します。
    アイコンセットはブックのIconSets【アイコンセッツ】コレクションの1つであるため
    指定する場合は「ActiveWorkbook.IconSets( 定数 )」のように記述します。
    アイコンセット内の各アイコンは右からIconCriteria(1)
    2番目をIconCriteria(2)というように参照して各設定を行います。

    XlIconSet列挙型の定数
    定数アイコンセット
    xl3Arrows1
    xl3ArrowsGray2
    xl3Flags3
    xl3TrafficLights14
    xl3TrafficLights25
    xl3Signs6
    xl3Symbols7
    xl3Symbols28
    xl4Arrows9
    xl4ArrowsGray10
    xl4RedToBlack11
    xl4CRV12
    xl4TrafficLights13
    xl5Arrows14
    xl5ArrowsGray15
    xl5CRV16
    xl5Quarters17
    xl3Triangles18
    xl3Stars19
    xl5Boxes20

IconCriteria【アイコンクライテリア】プロパティ

個々のアイコンの設定の種類を表す
IconCriterion【アイコンクライテリオン】オブジェクトを取得するには
アイコンセットの種類やしきい値などの設定を表す
IconSetCondition【アイコンセットコンディション】オブジェクトの
IconCriteria【アイコンクライテリア】プロパティを使用します。

IconCriteria【アイコンクライテリア】プロパティの書式

オブジェクト.IconCriteria( Index )


設定値(引数)の説明

  • オブジェクト(必須)
    AddIconsetCondition【アドアイコンセットコンディション】メソッドで追加した
    アイコンセットの種類やしきい値などの設定を表す
    IconSetCondition【アイコンセットコンディション】オブジェクトを指定します。
  • Index【インデックス】(必須)
    アイコンのインデックス番号を指定します。
    アイコンのインデックス番号を指定して、個々のアイコンの
    設定の種類いを表すIconCriterion【アイコンクライテリオン】オブジェクトを取得して
    IconCriterion【アイコンクライテリオン】オブジェクトの各プロパティを使用して
    個々のアイコンの設定を行います。

IconCriterion【アイコンクライテリオン】オブジェクトの主なプロパティ一覧

  • Type【タイプ】プロパティ
    アイコンセットのしきい値を判断する方法を指定します。
    XlConditionValueTypes列挙型の定数または値で指定します。

    XlConditionValueTypes列挙型の定数
    定数内容
    xlConditionValueNone‐1条件なし
    xlConditionValueNumber0数値
    xlConditionValueLowestValue1値の最低値
    xlConditionValueHighestValue2値の最大値
    xlConditionValuePercent3パーセンテージ
    xlConditionValueFormula4数式
    xlConditionValuePercentile5百分位
  • Value【バリュー】プロパティ
    しきい値となる値または数式を指定します。
  • Operator【オペレーター】プロパティ
    Value【バリュー】プロパティで指定したしきい値の判断方法を
    XlFormatConditionOperator 列挙型の定数または値で指定します。

    XlFormatConditionOperator 列挙型の定数
    定数内容
    xlBetween1間(2つの数式が指定されている場合のみ)
    xlNotBetween2次の値の間以外(2つの数式が指定されている場合のみ)
    xlEqual3等しい
    xlNotEqual4等しくない
    xlGreater5次の値より大きい
    xlLess6次の値より小さい
    xlGreaterEqual7以上
    xlLessEqual8以下

達成率に応じて矢印のアイコンを設定するコード例

Sub アイコン()
Range("A2:A6").FormatConditions.Delete
Dim アイコン As IconSetCondition
Set アイコン = Range("A2:A6").FormatConditions.AddIconSetCondition
With アイコン
    .IconSet = ActiveWorkbook.IconSets(xl5Arrows)
 With .IconCriteria(2)
      .Type = xlConditionValueNumber
      .Value = 0.9
      .Operator = xlGreaterEqual
 End With
 With .IconCriteria(3)
      .Type = xlConditionValueNumber
      .Value = 1
      .Operator = xlGreaterEqual
 End With
 With .IconCriteria(4)
      .Type = xlConditionValueNumber
      .Value = 1.01
      .Operator = xlGreaterEqual
 End With
 With .IconCriteria(5)
      .Type = xlConditionValueNumber
      .Value = 1.2
      .Operator = xlGreaterEqual
 End With
End With
End Sub

実行結果


ShowIconOnly【ショウアイコンオンリー】プロパティ

アイコンセットの条件書式を設定したセルで、セル内のデータを非表示にして
アイコンだけを表示するには
IconSetCondition【アイコンセットコンディション】オブジェクトの
ShowIconOnly【ショウアイコンオンリー】プロパティを使用します。

ShowIconOnlyプロパティの書式

オブジェクト.ShowIconOnly = 設定値


設定値の説明

  • オブジェクト(必須)
    AddIconsetCondition【アドアイコンセットコンディション】メソッドで取得した
    IconSetCondition【アイコンセットコンディション】オブジェクトを指定します。
  • 設定値(必須)
    アイコンだけの表示にするかしないかをブール型の値で指定します。

    設定値内容
    Trueアイコンだけの表示にします。
    False両方表示します。(既定値)

ReverseOrder【リバースオーダー】プロパティ

アイコンセットの表示順序を逆順にするかどうかは
IconSetCondition【アイコンセットコンディション】オブジェクトの
ReverseOrder【リバースオーダー】プロパティを使用します。

ReverseOrderの書式

オブジェクト.ReverseOrder = 設定値


  • オブジェクト(必須)
    AddIconsetCondition【アドアイコンセットコンディション】メソッドで取得した
    IconSetCondition【アイコンセットコンディション】オブジェクトを指定します。
  • 設定値(必須)
    アイコンセットの表示順序をブール型の値で指定します。

    設定値内容
    True表示順序を逆にします。
    False標準の順序にします。(既定値)

以上で
アイコンセットを表示する条件付き書式を設定する方法についての
解説を終了します。
ありがとうございます。

スポンサーリンク
スポンサーリンク

フォローする

スポンサーリンク
スポンサーリンク