本ページは公開が終了した情報の複製であり、掲載時点での情報です。本ページに記載されている内容について各所に問い合わせることはご遠慮下さい。
サポート技術情報

[XL] グラフ系列のデータラベルを要素ごとに変更する方法

文書番号: 401687

最終更新日: 1998/02/10


この資料は以下の製品について記述したものです。


この記事は、以前は次の ID で公開されていました: JP401687

概要

本文書では、Microsoft(R) Visual Basic(R) Programming System Applications
Edition (以下 VBA) でグラフに含まれるデータ系列のデータ ラベルを要素ごと
に変更する方法をサンプル モジュールと共に解説しています。

詳細

グラフに含まれるデータ系列のデータ ラベルを要素ごとに変更するためには
Point オブジェクト、DataLabel オブジェクトを使用します。
VBA ではデータ系列をあらわすオブジェクトとして SeriesCollection オブジェ
クトを、要素をあらわすオブジェクトとして Point オブジェクトを使用します。

サンプル 1

次のサンプル モジュールでは、ワークシート "Sheet1" の埋め込みグラフ "グラフ 1" に含まれる「データ系列 2 (S2) 」の「要素 3 (S2P3) 」に対するデータ ラベルを文字列 "第三四半期" に変更しています。
  Option Explicit
  Sub ChangeDataLabel()
      WorkSheets("Sheet1").Select
      ActiveSheet.DrawingObjects("グラフ 1").Select
      ActiveSheet.ChartObjects("グラフ 1").Activate
      ActiveChart.ApplyDataLabels Type:=xlShowValue, LegendKey:=False
      With ActiveChart.SeriesCollection(2).Points(3)
          .DataLabel.Text = "第三四半期"
      End With
  End Sub

サンプル 2

系列番号および要素番号に変数を指定することにより、データ ラベルをまとめて
任意の値に変更することが可能です。
次のサンプル モジュールでは、グラフシート "Graph1" の「データ系列 1 (S1) 」 と「データ系列 2 (S2) 」にそれぞれ 10 個の要素が存在するとき (合計 20
個の要素)、「データ系列 1 (S1) 」の各要素にはワークシート "Sheet1" の セル範囲 A1:A10 の値を、「データ系列 2 (S2) 」の各要素にはワークシート
 "Sheet1" のセル範囲 B1:B10 の値に変更しています。
  Sub ChangeDataLabels()
      Dim count As Integer
      Charts("Graph1").Select
      ActiveChart.ApplyDataLabels Type:=xlShowValue, LegendKey:=False
      For count = 1 To 10
          With ActiveChart.SeriesCollection(1).Points(count)
              .DataLabel.Text = WorkSheets("Sheet1").Cells(count,1). _
                  Value
          End With
          With ActiveChart.SeriesCollection(2).Points(count) _
              .DataLabel.Text = Worksheets("Sheet1").Cells(count,2). _
                  Value
          End With
      Next count
  End Sub

注意

通常、データの配置されている順番に要素番号が決定されますが、変更を行い
たいグラフが「散布図」の場合は、要素番号を Excel 5.0 が自動調整します
ので注意が必要です。

Keywords: KBHOWTO KB401687
Technology: kbExcel500 kbExcelSearch kbExcelWinSearch

inserted by FC2 system