← コード一覧へ戻る
実務スパークライン

スパークラインを挿入する

B2:F5の各行から、G2:G5へ折れ線スパークラインを作ります。

実行前に確認

  • デスクトップ版Excel 2010以降の機能です。セルの値が空でも既存のスパークラインがある場合は処理を止めます。

1サンプルコード

Sub Example1179()
    Dim ws As Worksheet
    Set ws = ThisWorkbook.Worksheets("Sheet1")
    If Application.ReferenceStyle <> xlA1 Then
        MsgBox "Excelの設定でR1C1参照形式をオフにしてください。"
        Exit Sub
    End If
    If ws.Range("G2:G5").SparklineGroups.Count > 0 Then
        MsgBox "G2:G5には既にスパークラインがあります。"
        Exit Sub
    End If
    ws.Range("G2:G5").SparklineGroups.Add Type:=xlSparkLine, SourceData:="'Sheet1'!B2:F5"
End Sub

図で見る操作の流れ

イメージ図

概念図:各行の5期間の数値を、右隣の小さな折れ線にします。

  1. 手動:準備

    Sheet1!B2:F5に4行分の数値を入力

  2. マクロ:条件確認

    A1参照形式で、G2:G5に既存スパークラインがないか確認

  3. 結果

    B2:F2→G2、B3:F3→G3、B4:F4→G4、B5:F5→G5

R1C1参照形式や既存スパークラインがある場合は案内して終了します。

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

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

    練習用のブックを.xlsm形式で保存し、Sheet1という名前のシートを用意します。B2:F5に5期間分・4行の数値を入力し、G2:G5を空けます。

  2. 2

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

  3. 3

    B2:F5が元データ、G2:G5が表示先です。行数をそろえます。

  4. 4

    マクロ内にカーソルを置いてF5で実行します。G列の各セルに、その行の推移を示す小さな折れ線が表示されます。

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