← コード一覧へ戻る
基本セル・範囲

セルの背景に対角線方向や放射状のグラデーションを設定する

A1には対角線方向、C1には中心から外側へ広がる矩形グラデーションを設定します。

実行前に確認

  • 元の背景書式を変更します。「放射状」はセルの矩形グラデーションで近い効果を示す例で、円形の放射グラデーションではありません。

1サンプルコード

Sub Example1197()
    Dim ws As Worksheet
    Set ws = ThisWorkbook.Worksheets("Sheet1")
    With ws.Range("A1").Interior
        .Pattern = xlPatternLinearGradient
        With .Gradient
            .Degree = 45
            .ColorStops.Clear
            .ColorStops.Add(0).Color = RGB(255, 255, 255)
            .ColorStops.Add(1).Color = RGB(50, 120, 220)
        End With
    End With
    With ws.Range("C1").Interior
        .Pattern = xlPatternRectangularGradient
        With .Gradient
            .RectangleLeft = 0.5
            .RectangleRight = 0.5
            .RectangleTop = 0.5
            .RectangleBottom = 0.5
            .ColorStops.Clear
            .ColorStops.Add(0).Color = RGB(255, 255, 255)
            .ColorStops.Add(1).Color = RGB(220, 100, 50)
        End With
    End With
End Sub

図で見る操作の流れ

イメージ図

概念図:2種類のグラデーションの方向を比較します。

  1. 手動:準備

    Sheet1のA1とC1を見やすい大きさに広げる

  2. マクロ:A1

    45度の直線グラデーション。白から青へ

  3. マクロ:C1

    中心から外へ広がる矩形グラデーション。白から橙へ

元の背景書式を変更します。C1は円形の放射グラデーションではありません。

コードの処理を説明する模式図です。実際の画面や実行結果を撮影したものではありません。

使い方・実行手順を確認する4つの手順で、コードの使い方を確認できます
  1. 1

    練習用のブックを.xlsm形式で保存し、Sheet1という名前のシートを用意します。A1とC1の列幅・行高を広げて見比べます。

  2. 2

    Alt+F11でVBEを開き、[挿入]→[標準モジュール]へコードを貼り付けます。

  3. 3

    A1のDegree=45が斜め方向です。C1の4つの0.5は中心位置を指定します。

  4. 4

    マクロ内にカーソルを置いてF5で実行します。A1は斜め、C1は中心から外側へ色が広がります。

使っている機能の公式ドキュメント(Microsoft Learn)