- 締切済み
Excelの棒グラフのマーカーを減らす方法
Excelで棒グラフを作成したとき、マーカーはデータ1個に対して1個付きます。対象データ数が多いときには、このマーカーが短い間隔で出るため、見にくいグラフになってしまいます。 そこで、このマーカーをデータのn個に1個だけとしたい場合には、どのようにすればよいのでしょうか? VBAを使って、マーカーを消すと言う方法はやっているのですが、データ数が多いとグラフの再描画に時間がかかるためか、全部を処理するのに非常に時間がかかってしまいます。 簡単なグラフの設定で変更することはできないでしょうか? 他のグラフ作成ソフトでは、殆どのものがこのようなマーカーを減らすことができるので、多分Excelでも設定方法があると思うのですが、見つけることができませんでした。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- imogasi
- ベストアンサー率27% (4737/17069)
ワークシートのグラフを書きたいデータ範囲を指定します。 挿入-グラフ-例えば棒グラフ-次ぎへ-次ぎへ-「データラベル」のタブをクリック-「値を表示する」-次ぎへ-完了 で棒グラフの全ての棒の上に数値(データラベル)が表示されます。 これを1つ飛びに消します。 VBEの標準モジュールに下記を貼りつけます。 Sub test02() For i = 1 To 6 If i Mod 2 = 0 Then ActiveChart.SeriesCollection(1).Points(i).HasDataLabel = False End If Next i End Sub VBE画面でF5キーを押して実行すると 2,4,6番目のデータラベルが消えます。 If i Mod 2 = 0 Thenの部分を 改造して都合よい間引き方を決めてみてください。 個々の「棒」はActiveChart.SeriesCollection(1).Pointsで捉えられるのがポイントです。 そのPoints単位でHasDataLabelプロパティを設定できる と言うことです。 手作業でも1つ1つ出きることでしょうが、VBAで自動でやらせると言うことです。
お礼
回答ありがとうございます。 大変はずかしいことなのですが、質問の内容を間違えていました。 棒グラフではなく、折れ線グラフでした。
補足
質問の本文中にもありますように、ご回答のようなVBAで1つ1つを消すという方法は既に行っております。 これだと、再描画に時間がかかるので設定などで対応することはできないかということですが、どうでしょうか。 尚、質問を間違えていたので、これは一度締め切り再投稿したいと思います。