• ベストアンサー

エクセルでの積み上げ棒グラフを作成した際に、その積上棒グラフ内に比率を表示したい

エクセルで100%の積上げ棒グラフでないもの(高さが様々な棒グラフ)を作成した際に、その積上げた棒グラフの1本1本を各100%として、各積上げ表示した棒グラフ内にその値の比率を表示する事はできますか? 全部高さを同じにする100%積上げ棒グラフの作成方法はわかるのですが、同じ高さにはしたくなく、各棒が色々な高さで比較でき、かつ、その1本の中でのまたその積上げている値の比率を表示したいものです。 何方かわかる方、ご教授下さい。

質問者が選んだベストアンサー

  • ベストアンサー
  • okormazd
  • ベストアンサー率50% (1224/2412)
回答No.5

ANo.3 です。 VBA Sample これを標準Moduleにでも貼り付ける。 作成した積み上げグラフをクリックして選択してからこのSubを実行する。%はVBAで計算するので、普通の積み上げグラフを作ればよい。データラベルもつけなくてよい。系列の色や線によってはラベルが見にくいこともあるが書式の変更も可能なのですが。 元データが変更されると自動では対応していない。自動ですることも可能だけど。 コードの中身はちょっと難しいかもしれない。 Sub replace2ratio() Dim ptdata(), pttotal() With ActiveChart 'データ個数取得 scn = .SeriesCollection.Count orgdata = .SeriesCollection(1).Values lb = LBound(orgdata) ub = UBound(orgdata) ReDim ptdata(scn, ub), pttotal(ub) '元データ取得 For sc = 1 To scn orgdata = .SeriesCollection(sc).Values For pt = lb To ub ptdata(sc, pt) = orgdata(pt) pttotal(pt) = pttotal(pt) + ptdata(sc, pt) Next Next '%を計算してセット For sc = 1 To scn For pt = lb To ub ptdata(sc, pt) = Round(ptdata(sc, pt) / pttotal(pt) * 100, 1) & "%" .SeriesCollection(sc).Points(pt).DataLabel.Characters.Text = ptdata(sc, pt) Next Next End With End Sub

yoppy6613
質問者

お礼

VBAのsampleありがとうございます。 早速試しみますね

その他の回答 (4)

  • fukuchan7
  • ベストアンサー率51% (156/302)
回答No.4

No1.です。補足拝見しました。 VBAを使えば楽にできると思うのですが、VBAは分かりませんが、わたしの方法は手動でNo3.さんと同じ方法ですので回答は控えさせていただきます。。

yoppy6613
質問者

お礼

ありがとうございました。 手動にて試してみます。

  • okormazd
  • ベストアンサー率50% (1224/2412)
回答No.3

できないことはありませんが、手動でやるか、VBAになります。 元のデータの表に%のデータを追加しておきます。 1.普通の積み上げグラフを作ります。 2.グラフにデータラベルを追加します。 3.グラフのデータラベルのところを、ゆっくりとダブルクリックします。 4.もう1度クリックすると、データ入力できるようになりますから、実データを消して、%データを入力します。「%」をつければ、「25.3%」のような表示になります。 5.これをデータの数だけ繰り返す。 大変だね。 で、 VBAなら楽。

yoppy6613
質問者

お礼

ありがとうございました。 VBAなら楽とのことですが、sampleの記述を教えていただく事はできますか? VBAは明るくなく、きっかけがあったら試して見たいとは思いつつ取っ掛かりが無く今回をきっかけにさせて頂ければと思い、なにかヒントでも結構ですので・・・ よろしくお願いします。

  • koko88okok
  • ベストアンサー率58% (3839/6543)
回答No.2

Excelのグラフ機能には、ご希望のようなグラフの値を表示する機能はないように思います。 次のような表示方法は如何でしょう。 1) 邪魔にならない場所に、表示したい値の表を作成します。 2) テキストボックスを挿入し、カーソルが表示されているのを確認して、数式バーにカーソルを移動します。 3) 1)で作成した表のセルの参照式を入力して「Enter」を押します。 4) テキストボックスに参照したセルの値が表示されますので、グラフの希望の位置に移動します。 5) 上記の操作を必要回数繰り返します。 元データが変更される場合に備えて、表示する値の表は元データを使った数式で表示しておきますと、参照式で表示したテキストボックスの値も自動的に変更されます。 なお、テキストボックスにセルの値を表示する操作の詳細は、下記URLをご参照ください。 「テキストボックスに任意のセルのデータを表示させる」 http://pc.nikkeibp.co.jp/article/NPC/20060213/229154/?set=dl_excel

yoppy6613
質問者

お礼

ありがとうございました。 やはり、テキストボックスを使用するしかないようですね。 試してみます。

  • fukuchan7
  • ベストアンサー率51% (156/302)
回答No.1

出来ないことはありませんが、 1、Y軸目盛がそれぞれのグラフに対応しなくなりますが、それでよいのでしょうか? 2、棒グラフ内にその値の比率を表示するのであればY軸目盛はあえて必要がないと思うのですが・・・ 以上2点について補足して下さい。、

yoppy6613
質問者

補足

できればY軸目盛は表示希望です。 1本の中の積上げている各値についての表示という点では不必要ですが、各色々な高さの棒が表示されているため、その1本の積上げた合計値がY軸目盛により表示されればいいな、と考えています。 よろしくお願いいたします。

関連するQ&A

  • Excel積上げ棒グラフ合計値数字の表示方法

    Excel2007で積上げ棒グラフを使用しグラフを作成する際、積上げる個々のグラフの数値表示は グラフ積上げ部分を指定し、「データラベルの追加」のメニューを選択することでグラフ内に数値が 表示されます。 この状態で、棒グラフ先端に積上げ合計値を表示させたグラフを作成したいのですが、作成方法を 教えて下さい。

  • エクセル2000の棒グラフについて

    エクセル2000で「積上げ縦棒」でグラフを作っております エックス軸は時系列で単位は「月」です。ワイ軸は「円」です。 とりあえず、1月から2月までの営業での各費用(消耗品費や交通費など)を積上げ横棒でグラフ化しました。 そこで、昨年の1月から12月までの積上げ棒グラフと、今年の積上げ棒グラフを月ごとに並べて表示させたいのです。 つまり、14年1月度の棒グラフに15年の1月度の棒グラフが隣接しており、すこし隙間を置いて14年2月度の棒グラフに15年の2月度の棒グラフが表示される・・・というふうにしたいのです。 エクセルにお詳しい方どうかお返事ください。大変困っております。

  • excel2000で積上げ棒グラフを隙間無く並べて表示する方法

    売上高と利益を年度毎に縦棒にするグラフを作成しています。 年度      2005、 、2006、 、2007、 、2008、 、 ●サービス売上  100、 、100、 、 120、 、 123、 、 ▲サービス売上  150、 、120、 、 110、 、 120、 、 利益        、20、  、30、 、10、  、15、 という表を作成して積上げ棒グラフを作成しました。 (●と▲は積上げた一本のグラフです) 現在のグラフは2本の棒が離れて立っており、1本分のスペースが開いて、次の棒が立っている、とういう状態です。 より一層見やすくする為に、この立っている2本の棒を並べて(間にスペースを入れずに)表示したいと思います。 色々調べたのですが、エクセル2007の場合は 「グラフツール>グラフツール>レイアウト>現在の選択範囲から   系列"XX"と表記されているものを1つ選択>書式設定>要素感覚を0%に」 という方法があるようですが、同じ作業はエクセル2000でも出来るのでしょうか? 出来ないのであれば、どのような形で2つの棒を並べる(隙間無く)ことが出来ますか? どなたかエクセルに詳しい方御教授下さい。

  • 積上げ棒グラフと単純な棒グラフを同時に作表したい

    エクセルVBAで、棒グラフを作っています。 売上高の単純な棒グラフとその横に 変動費と固定費の積上げ棒グラフを月順に作表したいのですが、 単純な棒グラフのみ又は積上げ棒グラフのみのグラフはできるのですが 両方同時に作表するには、どういう工夫をVBAですれば、作表できるのか どなたか教えてください。 よろしくお願いします

  • 棒グラフ(積み上げ)の積上げ順を数値の大きい順に

    ご教授おねがいします。 エクセル2007で棒グラフ(100%積み上げ縦棒)を作成しています。 各棒の積上げ順序を、下から数値の大きい順に積上げたいのですが 手作業で変更するにはかなり量があります。(100件以上) 何か良い方法はありませんでしょうか。 何卒よろしくお願いします。

  • Excelのグラフウィザードにて2つの積上げ棒の作り方を教えてください。

    質問 Excelの積上げ棒を2つ並べたいです。 1つの品物に対して 2つの積上げ棒を作るのは可能でしょうか? 詳細 品物名(A列)|粗材数(B列)|加工途中数(C列)|完成数(D列)|当月注文数(E列)|次月注文数(F列)|次々月注文数(G列)| 品物A    |10        |20          |30        |20        |10          |5 品物B    |20        |10          |5        |10         |10          |25 : : : : という一覧があります。 グラフウィザードの積上げ棒を使用して(出来れば縦の積上げ棒で) X軸:品物 Y軸:個数 で表を作りたいと考えています。 並びとしては 品物Aの積上げ棒1=粗材+加工途中+完成 品物Aの積上げ棒2=当月注文数+次月注文数+次々月注文数 品物Bの積上げ棒1=粗材+加工途中+完成 品物Bの積上げ棒2=当月注文数+次月注文数+次々月注文数 : : : という感じに並べたいです。 この様に並べられれば全部の材料と注文数をパッと見で比較出来ると思っております。 この様な並べ方を教えてください。

  • エクセルグラフ作成について

    エクセルで下記の表のグラフを作成したいのですが、積上げ棒グラフと折れ線グラフを同グラフに表示させたいのです。           1月 2月     目標   実績  達成率 目標   実績  達成率 A氏  2,000 5,000 250%   2,000 5,000 250% B氏  3,000 500 17%   5,000 3,000 60% C氏 5,000 3,000 60%   3,000 500 17% X軸は、1月~12月の目標、実績を積上げ棒にして、達成率を折れ線にしたいのです。 よろしくお願いします。

  • エクセルの積上げ棒グラフを二つ並べたい

    (1)と(2)と(3)とAとBとCの、全6個の値を、日を追って比較したいと思っています。できれば個別でなく、(1)と(2)と(3)を積上げた棒とAとBとCを積上げた棒を並べて、それを日毎に並べていきたいのですが、それはムリでしょうか…… エクセル2000を使っています。よろしくお願いします。

  • EXCEL 積み上げ棒グラフにおける%表示

    EXCELの積み上げ棒グラフについて質問させてください。 以前に一度できたのですが、どうしてもやり方を思い出せずにいます。 下記のようなグラフがあるとします。 □や■が棒グラフと思ってください。 10名 □     □      □4名   □  5名 ■     □      ■     □8名  0名 ■6名   ■2名     --------------------    1992   1993   上記のグラフは普通に積み上げ棒グラフは作成できます。 今回は、この棒グラフの中に記載するデータの値を、 縦軸の表示は人数のままで、下記の様に%表示したいのです。 10名 □     □      □40%  □  5名 ■     □      ■     □80%  0名 ■60%  ■20%     --------------------    1992   1993    どなたか、方法をご存知の方がいらっしゃれば、 宜しくお願いいたします。

  • エクセルのグラフで添付(汚くて申し訳ありませんが)のようなものを作りた

    エクセルのグラフで添付(汚くて申し訳ありませんが)のようなものを作りたいです。 積上げ棒グラフを月別にただ横に並べるまでは問題ないのですが、数年分の同月を比較表示したいので 例えばですが、今年の4月の横に昨年の4月の積上げ棒を並べる 5月以降も同様 とするには どうすれば宜しいでしょうか?

専門家に質問してみよう