Windows7 & Office2010 Excel2010

Print Friendly

円グラフの要素の色を固定する

投稿日:2017年1月7日 更新日:

Excelでグラフを作成すると、1番目の色、2番目の色・・・と決まった色で設定されます。
たとえば、下のように関東の表では、A社→B社→C社→D社の順位で、円グラフの要素の色は赤→黄緑→水色→ピンクです。
九州の表では、D社→C社→B社→A社の順位で、円グラフの要素は同じく赤→黄緑→水色→ピンクとなります。

これを、下の画像のようにA社は常に赤、B社は黄緑、C社は水色、D社はピンクというように会社ごとに色を固定したい場合の方法です。
毎回、グラフの要素ごとに設定を変更すればいいのですが、面倒なのでマクロを作成してみました。
※積み上げ棒グラフの系列ごとの色固定は、マクロも作りやすいのですが、円グラフは簡単にはできないんですね。
ネットで検索して、あちこちのサイトにお世話になりながら思いついた方法です。本当はもっとスマートな方法があるかもしれません。

上の関東の表は、A社が赤、B社が黄緑、C社が青、D社がピンクになっているので、各要素の色はこの色で固定します。
セルA1からセルA4の色の順番が円グラフの色の順番になります。九州の会社名をコピーします。ここではセルC18からセルC21までです。

セルA1に貼り付けます。

マクロを実行したい円グラフを選択して、マクロの[円グラフの色指定]を実行します。

九州の円グラフは、A社が赤、B社が黄緑、C社が青、D社がピンクになります。A列は削除して構いません。

このマクロは、VBA 円グラフの色設定(Chart,SeriesCollection):Excelマクロサンプル集を参考にさせていただきました。(人-)謝謝

では、マクロです。[色設定]と[円グラフの色指定]の2つですが、実行するのは[円グラフの色指定]です。
[円グラフの色指定]の中で、[色設定]マクロを呼び出しています。
RGB値は、Office TANAKA - グラフ[ColorプロパティとRGB関数について]を参考に計算しました。
VBAは、得意ではないので、上記サイトで学習しながら作成したものです。
一応、これで動作はしています。ピボットグラフでも使えます。(Excel2010で確認)
あくまで参考として見てください。


Sub 色設定()

Dim FoundCell As Range

Set FoundCell = Range("A1:A4").Find(What:="A社")
If FoundCell Is Nothing Then
Else
FoundCell.Select
ActiveCell.Interior.Color = 255
End If

Set FoundCell = Range("A1:A4").Find(What:="B社")
If FoundCell Is Nothing Then
Else
FoundCell.Select
ActiveCell.Interior.Color = 3537312
End If

Set FoundCell = Range("A1:A4").Find(What:="C社")
If FoundCell Is Nothing Then
Else
FoundCell.Select
ActiveCell.Interior.Color = 16763904
End If

Set FoundCell = Range("A1:A4").Find(What:="D社")
If FoundCell Is Nothing Then
Else
FoundCell.Select
ActiveCell.Interior.Color = 16764159
End If

End Sub


Sub 円グラフの色指定()

Dim i As Long

With ActiveChart.SeriesCollection(1)

Call 色設定

For i = 1 To .Points.Count
.Points(i).Interior.Color = Cells(i, 1).Interior.Color
Next i
End With

End Sub


マクロボタンは、クイックアクセスツールバーやタブにに登録しておくと便利です。
マクロをタブに登録するにはを参考にしてください。

マクロをタブに登録するには

Office2010では、タブのカスタマイズができるようになりました。 非常に便利ですね。 Excelのマクロやアドインは、クイックアクセス ...

続きを見る

参考Officeのバージョンによって操作が異なる場合があります。以下の記事で、お使いのOfficeのバージョンを確認する方法を解説しています。

Office(Word、Excel、PowerPointなど)のバージョンを確認する方法

Microsoft Officeも時を得て、大きく様変わりしてきました。トラブルを解決しようとするとき、あるいは、何かの操作を探すときなど、 ...

続きを見る

あなたへのおすすめ

関連記事

図形の合成ボタンを追加

PowerPoint2013では、下のように[描画ツール]タブの[書式]タブに図形の結合というコマンドがありますが、PowerPoint20 ...

貼り付けのオプション

リアルタイムプレビューで貼り付けを実行する前に確認することができます。 貼り付けミスがなくなりますね。 Excel2010でコピー後、[ホー ...

スパークラインを使ってセル内にグラフを表示できる

セル内に折れ線グラフや、縦棒グラフ、勝敗グラフを表示させることができます。 操作方法については、下の動画をご覧ください。 または、スパークラ ...

リアルタイムプレビューの無効化

Office2007からリアルタイムプレビューという機能がありますが、古いパソコンなどでは動作が重くなるようです。 リアルタイムプレビューは ...

VBEをボタンから起動するには

AccessでVBEを起動するには、キーボードから[Alt]キーと[F11]キーを同時に押して開いていましたが、クイックアクセスツールバーに ...

-Windows7 & Office2010 Excel2010

Copyright © 2001-2017 初心者のためのOffice講座 All Rights Reserved.

Copyright© 初心者のためのOffice講座 , 2017 AllRights Reserved Powered by AFFINGER4.