方法 : ワークシートに Chart コントロールを追加する
Chart コントロールは、デザイン時および実行時にドキュメント レベルのカスタマイズの Microsoft Office Excel ワークシートに追加できます。アプリケーション レベルのアドインでも、Chart コントロールを実行時に追加できます。
対象: このトピックの情報は、Excel 2013 と Excel 2010 のドキュメント レベルのプロジェクトおよびアプリケーション レベルのプロジェクトに適用されます。詳細については、「Office アプリケーションおよびプロジェクト タイプ別の使用可能な機能」を参照してください。
このトピックでは、次のタスクについて説明します。
デザイン時に Chart コントロールを追加する
実行時に Chart コントロールをドキュメント レベルのプロジェクトに追加する
実行時に Chart コントロールをアプリケーション レベルのプロジェクトに追加する
Chart コントロールの詳細については、「Chart コントロール」を参照してください。
デザイン時に Chart コントロールを追加する
アプリケーションの中からグラフを追加するのと同じ方法で、ワークシートに Chart コントロールを追加できます。
[!メモ]
Chart コントロールは、ツールボックスや [データ ソース] ウィンドウにはありません。
Excel でワークシートに Chart ホスト コントロールを追加するには
[挿入] タブの [グラフ] で、[縦棒] をクリックし、グラフのカテゴリをクリックして、目的のグラフの種類をクリックします。
[グラフの挿入] ダイアログ ボックスで、[OK] をクリックします。
[デザイン] タブの [データ] で、[データの選択] をクリックします。
[データ ソースの選択] ダイアログ ボックスの [グラフ データの範囲] ボックス内でクリックし、既定の選択をクリアします。
チャート用のデータのある シートで、グラフのデータが格納されているセルの範囲 (セル A5 ~ D8) を選択します。
[データ ソースの選択] ダイアログ ボックスで、[OK] をクリックします。
実行時に Chart コントロールをドキュメント レベルのプロジェクトに追加する
実行時に Chart コントロールを動的に追加できます。動的に作成したグラフは、ドキュメントを閉じるとホスト コントロールとしてドキュメントに維持されません。詳細については、「実行時の Office ドキュメントへのコントロールの追加」を参照してください。
プログラミングによってワークシートに Chart コントロールを追加するには
Sheet1 の Startup イベント ハンドラーに以下のコードを挿入して、Chart コントロールを追加します。
Dim employeeData As Microsoft.Office.Tools.Excel.Chart employeeData = Me.Controls.AddChart(25, 110, 200, 150, "employees") employeeData.ChartType = Excel.XlChartType.xl3DPie ' Gets the cells that define the data to be charted. Dim chartRange As Excel.Range = Me.Range("A5", "D8") employeeData.SetSourceData(chartRange)
Microsoft.Office.Tools.Excel.Chart employeeData; employeeData = this.Controls.AddChart(25, 110, 200, 150, "employees"); employeeData.ChartType = Excel.XlChartType.xl3DPie; // Gets the cells that define the data to be charted. Excel.Range chartRange = this.get_Range("A5", "D8"); employeeData.SetSourceData(chartRange, missing);
実行時に Chart コントロールをアプリケーション レベルのプロジェクトに追加する
プログラムによって Chart コントロールをアプリケーション レベルのアドイン プロジェクトの任意の開いているワークシートに追加できます。詳細については、「アプリケーション レベルのアドインにおける実行時の Word 文書や Excel ブックの拡張」を参照してください。
動的に作成されたチャート コントロールは、ワークシートを閉じるときに、ホスト コントロールとしてワークシートに保持されません。詳細については、「実行時の Office ドキュメントへのコントロールの追加」を参照してください。
プログラミングによってワークシートに Chart コントロールを追加するには
次のコードでは、開いているワークシートに基づいたワークシート ホスト項目を作成し、Chart コントロールを追加します。
Private Sub AddChart() Dim NativeWorksheet As Microsoft.Office.Interop.Excel.Worksheet = Globals.ThisAddIn.Application.ActiveWorkbook.ActiveSheet Dim worksheet As Microsoft.Office.Tools.Excel.Worksheet = Globals.Factory.GetVstoObject(NativeWorksheet) Dim cells As Excel.Range = worksheet.Range("A5", "D8") Dim chart As Chart = worksheet.Controls.AddChart(cells, "employees") chart.ChartType = Excel.XlChartType.xl3DPie chart.SetSourceData(cells, Type.Missing) End Sub
private void AddChart() { Worksheet worksheet = Globals.Factory.GetVstoObject( Globals.ThisAddIn.Application.ActiveWorkbook.ActiveSheet); Excel.Range cells = worksheet.Range["A5", "D8"]; Chart chart = worksheet.Controls.AddChart(cells, "employees"); chart.ChartType = Microsoft.Office.Interop.Excel.XlChartType.xl3DPie; chart.SetSourceData(cells); }
コードのコンパイル
この例の要件は以下のとおりです。
- グラフ化するデータが、ワークシートの A5 ~ D8 の範囲に格納されていること。
参照
概念
アプリケーション レベルのアドインにおける実行時の Word 文書や Excel ブックの拡張
ホスト項目およびホスト コントロールのプログラム上の制限事項