Excel VBA セルにグラデーションを設定する xlPatternLinearGradientとxlPatternRectangularGradient

この記事では、Excel VBAを使用してセルにグラデーションを設定する方法を、分かりやすいサンプルプログラムと共に紹介します。xlPatternLinearGradientとxlPatternRectangularGradientの使い方をマスターしましょう。

Excel VBAでセルにどうやってグラデーションを設定するの?

Excel VBAでは、xlPatternLinearGradientとxlPatternRectangularGradientを使ってセルに美しいグラデーションを設定できますよ。

目次

xlPatternLinearGradientの基本

xlPatternLinearGradient はExcel VBAにおいて、セルにリニア(直線的)なグラデーションを設定するための機能です。

このグラデーションは、色が一方向に沿って徐々に変化します。通常、色の変化は縦または横方向に設定されますが、任意の角度を指定することも可能です。

Sub SetLinearGradient()
    Dim ws As Worksheet
    Set ws = ThisWorkbook.Sheets("Sheet1") ' 対象のシートを設定

    With ws.Range("A1:B2").Interior
        .Pattern = xlPatternLinearGradient
        .Gradient.Degree = 0 ' グラデーションの角度を設定(0度は水平)
        .Gradient.ColorStops.Clear

        ' グラデーションの開始色を設定
        With .Gradient.ColorStops.Add(0)
            .Color = RGB(255, 0, 0) ' 赤色
            .TintAndShade = 0
        End With

        ' グラデーションの終了色を設定
        With .Gradient.ColorStops.Add(1)
            .Color = RGB(0, 0, 255) ' 青色
            .TintAndShade = 0
        End With
    End With
End Sub
  • Set ws = ThisWorkbook.Sheets("Sheet1"): グラデーションを適用するシートを指定します。
  • .Pattern = xlPatternLinearGradient: セルの塗りつぶしパターンをリニアグラデーションに設定します。
  • .Gradient.Degree: グラデーションの角度を指定します。0度は水平、90度は垂直です。
  • .Gradient.ColorStops.Add: グラデーションの色を設定します。ここでは2色(赤と青)を使用しています。

xlPatternRectangularGradientの基本

xlPatternRectangularGradient はExcel VBAにおいて、セルに矩形(四角形)のグラデーションを設定するための機能です。

このグラデーションパターンでは、色の変化が矩形の形を形成し、通常はセルの中心から外側に向かって色が変わります。この機能は、データの視覚的強調やデザイン的な表現に利用されます。

Sub SetRectangularGradient()
    Dim ws As Worksheet
    Set ws = ThisWorkbook.Sheets("Sheet1") ' 対象のシート名を設定

    With ws.Range("A1:B2").Interior
        .Pattern = xlPatternRectangularGradient
        .Gradient.RectangleLeft = 0.1
        .Gradient.RectangleTop = 0.1
        .Gradient.RectangleRight = 0.9
        .Gradient.RectangleBottom = 0.9
        .Gradient.ColorStops.Clear

        ' グラデーションの色を設定
        With .Gradient.ColorStops.Add(0)
            .Color = RGB(0, 255, 0) ' 緑色
            .TintAndShade = 0
        End With

        With .Gradient.ColorStops.Add(1)
            .Color = RGB(0, 0, 0) ' 黒色
            .TintAndShade = 0
        End With
    End With
End Sub
  • Set ws = ThisWorkbook.Sheets("Sheet1"): 対象のシートを指定します。
  • .Pattern = xlPatternRectangularGradient: セルの塗りつぶしパターンを矩形グラデーションに設定します。
  • .Gradient.RectangleLeft, .Gradient.RectangleTop, .Gradient.RectangleRight, .Gradient.RectangleBottom: グラデーションが適用される矩形の範囲を設定します。
  • .Gradient.ColorStops.Add: グラデーションに使用する色を追加します。

まとめ

Excel VBAを使用してセルにグラデーションを設定する方法を解説しました。

  • xlPatternLinearGradientの使用: 直線的なグラデーションをセルに適用し、色の変化を水平または垂直方向に設定できます。
  • xlPatternRectangularGradientの使用: 矩形のグラデーションをセルに適用し、中心から外側に向かう色の変化を作成できます。

Excel VBAを使用してセルにグラデーションを設定する方法は、あなたのレポートやプレゼンテーションをより引き立てる強力なツールです。

ただし、グラデーションの使用は計画的に行うことが重要です。過度な使用は情報の見やすさを損なう可能性があるため、バランスを考慮しながら効果的に使用してください。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

CAPTCHA


目次