1

私はChart2 つを含むを持っていChartGroupます。私は意図的にこれを行ったことがないので、何が原因なのか推測できません。誰でもすべてのオプション (VBA またはその他) を指定できますか?

これにつながった可能性のある行動がどれかを知っていれば、それらを認識して制御/回避することができます.

PlotOrderPS: これの欠点は、を識別するためにを使用するコードがかなりあることSeriesです。が複数ある場合ChartGroup、は a内のPlotOrderの一意の識別子ではありません( 内で一意です)。とにかく、長期的には、コードを適応させる必要があります。しかし、当分の間、私は自分のチャートを可能な限り単一の . の を再割り当てする簡単な方法はありますか? (これにより、2 つの質問を含む 1 つの投稿が作成されます...)SeriesChartChartGroupChartGroupChartGroupSeries

この質問の元になったのは

Excel: チャート内の 2 つのシリーズの PlotOrder が重複しています

編集:ここにいくつかの興味深い調査結果をリストします(このトピックを中心に展開していますが、特定の質問には答えていません)。

  1. 公式サイトで見つけた

    ChartGroups Collection : 「指定されたグラフ内のすべての ChartGroup オブジェクトのコレクション。各ChartGroupオブジェクトは、同じ形式でグラフにプロットされた 1 つ以上の系列を表します。」for a )の型は、明らかに特定の形式 (たとえば、スキャッター) に関連付けられます。XlChartTypeEnumeration.ChartTypeSeriesxlXYScatter

    ChartGroup オブジェクト: "同じ形式でグラフにプロットされた 1 つまたは複数の系列を表します。 "

  2. a 内のすべてが同じ「formatSeries 」である必要があります。しかし、その逆は正しくありません。異なるsで同じ形式を使用することは可能です。以下のポイント 3 と例を参照してください。ChartGroupSeriesChartGroup

  3. ChartGroup オブジェクトから: "特定のグラフ グループのインデックス番号は、そのグループに使用されるグラフ形式が変更されると変更される可能性があるため、名前付きグラフ グループ ショートカット メソッドのいずれかを使用して特定のグラフ グループを返す方が簡単な場合があります。メソッドは、グラフ内の円グラフ グループのコレクションを返し、LineGroups メソッドは、折れ線グラフ グループのコレクションを返します。たとえば、LineGroups メソッド.

    これにより、ポイント 2 が可能になります。 は のPieGroupsコレクションを返しChartGroupます。そのような が複数存在する場合がありChartGroup、すべてのシリーズが Pie 形式になります。

  4. 特定のグラフ グループを返すために使用できる名前付きグラフ グループ ショートカット メソッドは包括的ではありません。たとえば、XYScatterGroups方法はありません。

ポイント 2 の例として、XYScatter 形式のすべてのシリーズを含むチャートがあります。利用可能な 5 つの s ( XlChartType EnumerationXlChartTypeによる数値と説明を含む) は次のとおりです。

xlXYScatter -4169   Scatter.
xlXYScatterSmooth   72  Scatter with Smoothed Lines.
xlXYScatterSmoothNoMarkers  73  Scatter with Smoothed Lines and No Data Markers.
xlXYScatterLines    74  Scatter with Lines.
xlXYScatterLinesNoMarkers   75  Scatter with Lines and No Data Markers.

グラフには、(カスタム Sub からの) ダンプに示されているように、2 つの ChartGroups があります。

ChartObject 'Chart 36', no. series: 6
* ChartGroup, .Index: 1, no. series: 2
** plot order: 1, type: -4169, chart: 'Chart 36', chart type: 73, no. points: 17
** plot order: 2, type: -4169, chart: 'Chart 36', chart type: -4169, no. points: 17
* ChartGroup, .Index: 2, no. series: 4
** plot order: 1, type: -4169, chart: 'Chart 36', chart type: 75, no. points: 2
** plot order: 2, type: -4169, chart: 'Chart 36', chart type: -4169, no. points: 24
** plot order: 3, type: -4169, chart: 'Chart 36', chart type: 75, no. points: 33
** plot order: 4, type: -4169, chart: 'Chart 36', chart type: -4169, no. points: 5

両方の sに一連のタイプxlXYScatter(-4169)があることに注意してくださいChartGroupSeries2 of 1の形式をChartGroup5 つのタイプのいずれかに変更できますが、そのChartGroup.

4

0 に答える 0