• 締切済み

Excel棒グラフを大きい順にしたいのですが

教えてください。Windowsxp、Excel2003で、3D積み上げ横棒グラフを作成しているのですが、元の表を入れ替えずに棒グラフのみをデーターの大きい順(一番長い棒が上にくるように)にしたいのですが、どうすればいいでしょうか?

みんなの回答

noname#96418
noname#96418
回答No.5

#2です。#4さんに触発された追加です。 次のようにすると、表のデータを並べ替える必要がなく、また、表とグラフの連動性が保たれます。(2007では有効性を確認しましたが、質問者さんがお使いの2003は手元にないので未確認です。もしだめなら、ごめんなさい。) (1)今の表のままでグラフを作成。 (2)棒のひとつの系列をクリックして選択。 (3)数式バーにSERIES関数が、例えば次のように表示されています。    =SERIES(Sheet1!$B$1,Sheet1!$A$2:$A$5,Sheet1!$B$2:$B$5,1) 先頭の引数は系列名のセル、2番目の引数は縦(項目)軸のデータのセル範囲、3番目の引数は系列1のデータのセル範囲、最後の引数は系列の番号です。この2番目と3番目の引数を、棒が望みの順番で並ぶように、例えば次のように書き直して、Enter。    =SERIES(Sheet1!$B$1,(Sheet1!$A$2,Sheet1!$A$4,Sheet1!$A$3,Sheet1!$A$5),(Sheet1!$B$2,Sheet1!$B$4,Sheet1!$B$3,Sheet1!$B$5),1) (4)積み上げ棒グラフですから、系列は複数ありますね。残りの系列についても同様にします。例えば次のように。    =SERIES(Sheet1!$C$1,(Sheet1!$A$2,Sheet1!$A$4,Sheet1!$A$3,Sheet1!$A$5),(Sheet1!$C$2,Sheet1!$C$4,Sheet1!$C$3,Sheet1!$C$5),2) これと内容的に同じことは、2007では[デザイン]タブ→[データの選択]ボタン→[データソースの選択]ダイアログボックスで[凡例項目(系列)]と[横(項目)軸ラベル]を上と類似の形に[編集]することで可能です。こちらの方が手間がかからないかもしれません。

mimi623
質問者

お礼

お礼がすっかり遅れてしまい申し訳ないです。 ご丁寧にありがとうございます。 なんだか聞いた事のない関数ですごく難しそうですね。 今度時間のある時に試してみます。 ありがとうございました。

  • xls88
  • ベストアンサー率56% (669/1189)
回答No.4

一時的にデータ表を並べ替えて、グラフのSERIES関数を値に置換する方法はどうでしょうか。 1)データ表を希望の姿でプロットされるように「並べ替え」 2)グラフの系列(棒のどれか)をクリックして選択 3)SERIES関数が表示された数式バーをクリックして編集モードにする 4)F9キーを押して、SERIES関数内のセル番地を値に置換 5)Enterで確定 6)データ表を元の順番に「並べ替え」る 以上の操作の結果、データ表とグラフの連動性は失われます。 元データを変更した場合、グラフで再設定しなければ反映されません。 楽をするならマクロを組めば(楽ではない?)良いとおもいます。 上記の操作を「マクロの記録」すれば、ほぼ使えるコードが得られます。 手順4)のコードで、少し工夫が要ります。少しVBAの知識が必要です。

mimi623
質問者

お礼

お返事がすっかり遅れてしまい、本当にごめんなさい。 ご丁寧にありがとうございます。 #2の時点では、出来るかも? っと思っていましたが、訂正いただい#4を追加しないといけないとすれば、やっぱり聞いた事のない関数で難しそうですね。 今度時間のある時に試してみますありがとうございました。

  • dejiji-
  • ベストアンサー率38% (327/858)
回答No.3

グラフを選択してください。 グラフに、黒い四角のマークが出てきます。 その後右クリックから、「データ系列の書式設定」をクリック。 「系列の順序」タブを選択すると、左にデータ名が出てきます。 これで、入れ替えたいデータ項目を動かしてください。 これで、動きます。(当方2000なので、以降のバージョンでも同じだと思いますが。) しかし、簡単なのは前出の回答です。別シートに同データ表を作り並べ替えて、この表からグラフを作る。その後、書式→シートから「表示しない」を選択しておけば良いと思いますが。

noname#96418
noname#96418
回答No.2

いちばん簡単なのは、#1の方法でしょうね。グラフ用の表は別のシートに作るとよいかもしれません。 「元の表を入れ替えずに」とありますが、「一時的なら入れ替えてもよい」のであれば、次の方法があります。 (1)元の表のデータを望みの順に並べ替える。 (2)それに基づいて、望みのグラフを作成する。 (3)そのグラフを[コピー]して、[形式を選択して貼り付け]で、適当な場所に図として貼り付ける。 (4)コピー元のグラフを削除する。 (5)表のデータを元の順に戻す。 言うまでもなく、図として貼り付けたグラフをあとで編集することはできません。図の書式設定はできますが。 どうしてもあとでグラフを編集したいのなら、オブジェクトの挿入で Microsoft Graph を選び、そのデータシートに表のデータを望みの順に並べるという方法があるでしょう。

  • marbin
  • ベストアンサー率27% (636/2290)
回答No.1

元の表を参照しグラフ用の表を作成し、その表から グラフを作るようにしてはいかがでしょう? グラフの方で順番を入替える方法はありそうな気が しますので識者のレスをお待ち下さい。

関連するQ&A