ExcelWork.info

Excel(エクセル)のマクロ・VBA・関数・操作などのメモ

グラデーション(Pattern プロパティ・Gradient プロパティ)

      2015/08/26

セルの背景ににグラデーションを設定する

Pattern プロパティを使用するとセルの背景にグラデーション(線形グラデーションまたは、四角形グラデーション)を設定することができます。
グラデーションを構成する色の設定には、ColorStops オブジェクトを使用します。
線形グラデーションで、色の角度を指定するには、Gradient オブジェクトの Degree プロパティを使用します。四角形グラデーションで、グラデーションの上下左右それぞれの位置を指定するには、Gradient オブジェクトの RectangleLeft・RectangleRight・RectangleTop・RectangleBottom プロパティを使用します。


Pattern プロパティ

【書式】

object.Pattern = { xlPatternLinearGradient | xlPatternRectangularGradient }


引数・戻り値

  • object  ・・・  対象となる Interior オブジェクトを指定します。
  • xlPatternLinearGradient(4000)  ・・・  線形グラデーションを指定します。
  • xlPatternRectangularGradient(4001)  ・・・  四角形グラデーションを指定します。

グラデーションを設定できるのは、Excel 2007 以降です。


Gradient オブジェクト

【書式】

Interior.Gradient.Degree = angle

Interior.Gradient.RectangleLeft = d_left
Interior.Gradient.RectangleRight = d_right
Interior.Gradient.RectangleTop = d_top
Interior.Gradient.RectangleBottom = d_bottom


Gradient オブジェクトの説明

Degree プロパティ
線形グラデーションで、色が変化する角度を指定するために使用します。

RectangleLeft プロパティ 他
四角形グラデーションで、上下左右の位置を指定するために使用します。


引数・戻り値

  • angle  ・・・  色が変化する方向の角度(0 ~ 360)を指定します。
     
    設定する角度 内容
    0 1 番目の色が左
    90 1 番目の色が上
    180 1 番目の色が右
    360 1 番目の色が下
  • d_left  ・・・  四角形のグラデーションを設定した時の左位置( 0 ~ 1 )を指定します。
  • d_right  ・・・  四角形のグラデーションを設定した時の右位置( 0 ~ 1 )を指定します。
  • d_top  ・・・  四角形のグラデーションを設定した時の上位置( 0 ~ 1 )を指定します。
  • d_bottom  ・・・  四角形のグラデーションを設定した時の下位置( 0 ~ 1 )を指定します。

1 番目の色」とは、ColorStops オブジェクトで最初に追加する色のことです。

 (例)
  Range(“A1”).Interior.Gradient.Degree = 90
  ‘↓ここで追加した色が上になる
  Range(“A1”).Interior.Gradient.ColorStops.Add(0).Color = RGB(255,0,0)
  Range(“A1”).Interior.Gradient.ColorStops.Add(1).Color = RGB(0,255,0)


ColorsStops オブジェクト(Count プロパティ)

【書式】

object.Interior.Gradient.ColorStops.Count


プロパティの説明

作業中のセルにおける ColorStops の数(グラデーションを構成している色の数)を取得します。Count プロパティは、取得のみで、設定することはできません。


引数・戻り値

  • object  ・・・  対象となる Range オブジェクトを指定します。

ColorsStops オブジェクト(メソッド)

【書式】

object.Interior.Gradient.ColorStops.Add ( position ).Color = rgb

object.Interior.Gradient.ColorStops.Add ( position ).ThemeColor = index

object.Interior.Gradient.ColorStops.Clear


メソッドの説明

Add メソッド
ColorStops を追加します。Color プロパティThemeColor プロパティ・TintAndShade プロパティで、グラデーションの色を指定します。ただし、ColorIndex プロパティは使用できません

Clear メソッド
現在の ColorStops をクリアします。つまり、グラデーションを構成している色をすべて削除します。


引数・戻り値

  • object  ・・・  対象となる Range オブジェクトを指定します。
  • position  ・・・  グラデーションを構成している色を追加する位置を倍精度浮動小数点型(Double)で指定します。( 0:最初の色、1:最後の色、3色以上を指定する場合は、0 より大きく 1 未満の値を指定します。
  • rgb  ・・・  RGB 値を指定します。RGB 関数を使用することも可能です( 色の設定 を参照 )。
  • index  ・・・  テーマカラーの基本色を表すMsoThemeColorSchemeindex 列挙型の定数または値(1 ~ 12)を指定します。( ThemeColor プロパティ・TintAndShade プロパティ を参照 )


グラデーションの設定 使用例

サンプルVBAソース


実行結果

グラデーションの設定 例


 - セルの操作 , , , , , , , ,

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

  関連記事

列名・列番号取得 使用例
列名を取得、列番号を取得(Address プロパティ,Column プロパティ)

列番号を取得する セル番地(「A1」や「B3」)や列名(「A」「B」「C」&#8 …

AutoFill メソッド 使用例 1
連続データを入力する(AutoFill メソッド)

AutoFill メソッド Excel で、連続するデータを入力する「オートフィ …

次の検索(FindNext メソッド,FindPrevious メソッド)

FindNext メソッド Find メソッドで開始された検索を継続します。引数 …

入力規則(エラーメッセージの設定)Validation オブジェクト

無効値を入力時に、エラーメッセージの表示 Validation.ShowErro …

セルの文字列を取得(Text プロパティ)

Text プロパティ セルに表示されている文字列を取得します。Text プロパテ …

セルが選択されているか確認する(TypeName 関数)

セルが選択されているか確認する方法と使用例 TypeName 関数の引数に、Se …

VerticalAlignment プロパティ 例01
文字列の縦位置を取得・設定する(VerticalAlignment プロパティ)

VerticalAlignment プロパティ VerticalAlignmen …

セル範囲内を検索(Find メソッド)

Find メソッド 指定したセル範囲内の特定の情報を含むセルを検索します。 【書 …

ReferenceStyle プロパティ 例01
A1参照形式、R1C1参照形式の設定・取得(ReferenceStyle プロパティ)

ReferenceStyle プロパティ ReferenceStyle プロパテ …

ShrinkToFit プロパティ 例
文字列を縮小して全体を表示(ShrinkToFit プロパティ)

ShrinkToFit プロパティ ShrinkToFit プロパティは、セルに …