以下は、私たちは、Excel VBAでの二つのプログラムを見ていきます。一つのプログラムでは、シート上のすべてのチャートをループし、円グラフに各チャートを変更します。

他のプログラムは、最初のグラフのいくつかのプロパティを変更します。

いくつかのグラフを作成します(またはExcelファイルをダウンロード)1.。

Programming Charts in Excel VBA

ワークシート上のコマンドボタンを配置し、次のコード行を追加します。

1.まず、我々はChartObjectにオブジェクトを宣言する必要があります。 ChartObjectにオブジェクトは、チャートオブジェクトのコンテナとして機能します。私たちは、ChartObjectにはCHTを呼び出していますが、任意の名前を使用することができます。

Dim cht As ChartObject
  1. ChartObjectsコレクションは、単一のシート上のすべての埋め込みグラフが含まれています。私たちは、最初のシート上のすべてのチャートをループにしたいです。次の各ループのために以下を追加します。

For Each cht In Worksheets(1).ChartObjects

Next cht

3.グラフオブジェクトは、ブックのグラフを表します。円グラフに各チャートを変更する次の各ループのために次のコード行を追加します。

cht.Chart.ChartType = xlPie

注:もう一度、CHTはChartオブジェクトのコンテナとして機能します。私たちは、グラフの種類を変更するにはChartTypeプロパティを使用します。私たちは、円グラフに各チャートを変更するには、組み込みの定数xlPieを使用しています。

あなたはシート上のコマンドボタンをクリックすると、結果4:

Programming Charts Result

今、私たちは、最初のグラフのいくつかのプロパティを変更します。

別のコマンドボタンを配置

ワークシート上の次のコード行を追加します。

  1. ChartObjectsコレクションは、単一のシート上のすべての埋め込みグラフが含まれています。最初のグラフをアクティブにするには、次のコード行を追加します。

Worksheets(1).ChartObjects(1).Activate

私たちは今、ActiveChartとして、このチャートを参照することができます。

チャートのタイトルを変更するには、次のコード行を追加します6。

ActiveChart.ChartTitle.Text = "Sales Report"

チャートの下に凡例を移動するには、次のコード行を追加します。7.:

ActiveChart.Legend.Position = xlBottom

あなたはシート上のコマンドボタンをクリックすると、結果8:

Programming Charts Result