2017-11-22 5 views
0

次のスクリプトは、列 "B"のセルの値がAまたはPの場合、バブルチャートの各点を確認します。Excel BubbleChart MarkerShapeが変更されない

次に、それぞれのマーカーの形状を円形(以前と同じ値、A)またはダイヤモンド(値P)に変更する必要があります。 ダイレクトウィンドウで正しい出力が得られるため、部分的に動作しますが、マーカーの形状は同じままです。なぜですか?

The Markerstyle property

コード:

Sub format_chart() 
Dim srs As Series 
Dim cht As Chart 

Set cht = Sheets("Diagramme").ChartObjects("Diagramm 1").Chart 
For Each srs In cht.SeriesCollection 
    If Range("B" & Application.WorksheetFunction.Match(srs.Name, Sheets("Diagrammdaten").Range("a:a"), 0)).Value = "A" Then 
     srs.MarkerStyle = xlMarkerStyleDiamond 
     Debug.Print "Value is A" 
    ElseIf Range("B" & Application.WorksheetFunction.Match(srs.Name, Sheets("Diagrammdaten").Range("a:a"), 0)).Value = "P" Then 
     srs.MarkerStyle = xlMarkerStyleCircle 
     Debug.Print "Value is P" 
    Else: Debug.Print "You Failed!" 
    End If 
Next srs 

End Sub 

答えて

1

あなたはバブルチャートを意味していますか?私が知る限り、バブルチャートのマーカーの形を変えることはできません。あなたは散布図でそれを行うことができます。散布図を意味する場合は、それを次の行に設定します。

srs.MarkerStyle = xlMarkerStyleDiamond 

セリ全体の市場スタイルを設定します。シングルポイントのスタイルを変更する場合は、srs.Pointsコレクションをループする必要があります。

+0

バブルチャートに似たデータを表示するので、vbaに散布図のポイントのサイズを設定することは可能ですか? – Chris

+1

これはスプレッドシートで可能なので、おそらくVBAでも可能です。マクロを記録してコードを見るだけです。 – MarcinSzaleniec

+0

マーカーを変更せず、異なる境界線を使用して問題を解決しました。ご協力ありがとうございました! – Chris

関連する問題