• ベストアンサー

自動的に今の時間帯の円グラフを表示

T9には今の時間帯 Aを表す数式が入っています。 円グラフは Aの円グラフが表示されています。 現在時刻が 11:31の時は T9が Bと表示され Bの円グラフが表示したいのですが、これは可能な事ですか? 可能なら、円グラフの範囲をどこに指定すればいいのでしょうか?

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

  • ベストアンサー
  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.1

>円グラフの範囲をどこに指定すればいいのでしょうか? グラフ表示する範囲を別途、準備することになります。 例えば T10セルに =MATCH(T9,7:7,FALSE) と入れると 7行目にAと入っているセルが何列目にはいっているか表示されます。 現状では T9セルが Aなら 18 、Bなら 20 と表示れますので T11セルに =INDEX(A$1:W$6,ROW(A1),T$10) と入れて下までコピーすれば T9セルの値によって、R列、T列・・・と表示が変わります。 この範囲をグラフ範囲にしてご希望のグラフを作成してみてください。

ryujixryuj
質問者

お礼

ありがとうございます。とても参考になりました 多少手を加えたら 表示されました 

その他の回答 (3)

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.4

S2に =NOW()-TODAY() を入れてU2,W2にコピー貼り付ける S5に =MEDIAN(S1:S3)-S1 S6に =S3-MEDIAN(S1:S3) を入れてS5:S6をコピーし,U5:U6,W5:W6に貼り付ける シート名をSheet1にする ブックをBook1.xlsという名前にしてブックを保存する 挿入メニューから名前の定義を開始する 名前 myData 参照範囲 =IF(Sheet1!$T$9="A",Sheet1!$S$5:$S$6,IF(Sheet1!$T$9="B",Sheet1!$U$5:$U$6,IF(Sheet1!$T$9="C",Sheet1!$W$5:$W$6,""))) と登録する グラフを選び円グラフをクリックすると,数式バーに =SERIES(,Sheet1!$R$5:$R$6,Sheet1!$S$5:$S$6,1) という数式が現れるので,それを =SERIES(,Sheet1!$R$5:$R$6,Book1.xls!mydata,1) と直接書き換える。

ryujixryuj
質問者

補足

ありがとうございます。途中までうまくいきました。 シート名をSheet1にする ブックをBook1.xlsという名前にしてブックを保存する 挿入メニューから名前の定義を開始する のシート名をSheet1にする以下がよく理解できませんでした。 挿入メニューから名前の定義を開始するとは何のことでしょうか? ちなみにエクセル2003です それ以降ができませんでした。

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.3

「挿入」「名前」「定義」で例えば「グラフ範囲」と名前を付け、参照範囲に以下の式を入力します。 =OFFSET($R$5,0,MATCH($T$9,$S$7:$W$7,0),2,1) そしてグラフエリアを右クリック「元のデータ」の系列タブの値の欄を以下の式に書き換えます(ファイル名がBook1の場合)。 =Book1.xls!グラフ範囲 このようにしておけばT9セルの値によって自動的にデータ範囲が変更されます。

ryujixryuj
質問者

補足

ありがとうございます 早速やってみました。 まず  =OFFSET($R$5,0,MATCH($T$9,$S$7:$W$7,0),2,1) を円グラフのデータ範囲に設定しようしたら 参照範囲が正しくありませんが 出てしまいました。

  • kuwa_98
  • ベストアンサー率66% (79/119)
回答No.2

「QNo.7196282 残り時間が表示しない」で回答した者です。 1.方針   円グラフ用のデータは、表とは別のセルを指定します。   (例えばY1~Y6セル)   このセルは、現在時刻で数値を判定する式を記述します。   つまり、「データベースのセル」と「グラフ表示用のセル」   別に作るという事です。 2.例   Y2セルは、前回回答したように =NOW()-TODAY() とします。   Y6セルは、例えばif文で表示したいデータを記述します。   =IF(Y2>TIMEVALUE("11:30"),U6,S6) 3.今後の為に   IF文では複雑になる場合は、他の検索関数を使って下さい。     検索関数は、たくさん用意されていますので、HELPを   参照し、試してみて下さい。   適切な検索関数が無い場合は、検索をする為の表を別に   作ることになる場合もあるでしょう。   例えばVLOOKUP関数が使える様にするために、この関数に   必要なデータを一覧にした別表などです。   この別表には、元のデータベースを参照する式を記述します。   (例えば、 =シート名!セル名 )   私は、グラフ表示用のデータは、別シートに作ることにしています。   シート名は、「グラフ用データ」などとすれば良いでしょう。     

ryujixryuj
質問者

補足

ありがとうございます 早速やってみました。 残念ながら うまく行きませんでした。 今現在 14:55なので 本来「C」 の時間帯ですが、S6やU6はマイナス表示になっているから かもしれません。 Y6がマイナス表示になります。