• ベストアンサー

各区分ごとの最高値とその差を計算したいのですが

   [A列] [B列]     [C列]               [D列] [1行](天気) (気温)   (最高気温)           (気温差) [2行]  1   22.4  [3行]  2   20.5 [4行]  3   21.7  (B2~B4のうち最高気温)    [5行]  1   19.2 [6行]  2   17.0  (B5~B6のうち最高気温)  (直前最高気温C4との差) [7行]  1   19.8 [8行]  2   20.9  [9行]  3   20.1  (B7~B9のうち最高気温)  (直前最高気温C6との差) (以下省略) 上記のようにデータが並んでいるとします。 A列は同じ天気が続いた場合、その継続日数を順に入力しています。 例えばA列は上から順に晴れ1日目は1、晴れ2日目は2、晴れ3日目は3で、 次の日が雨で、雨1日目ということで1、雨2日目は2、次の日が 晴れで晴れ1日目だから1、晴れ2日目は2という具合です。 (但し、それぞれの天気が晴れなのか雨なのかはデータがないため 判別できません。分かるのはあくまで同一天気の継続日数だけです) そしてそれぞれの日の気温がB列に入力されています。 この場合における以下の2つの作業の処理方法を教えてください。 1)継続した同一天気の日の各区分ごとにそれぞれの最高気温を C列に出力する方法 2)D列に直前の最高気温との温度差を出力する方法 (上記の例で言うとD6にはC6-C4、D9にはC9-C6を求めたい) 実際にはデータ数が膨大なため、 回答はワークシート関数でお願いいたします。 OSはWindows2000、エクセルはExcel2000を使用しています。 よろしくお願いします。

noname#128465
noname#128465

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

  • ベストアンサー
noname#204879
noname#204879
回答No.2

質問の仕方が実に上手だなぁ(内容が必要かつ十分)!と感心してしまいました。 C2: =IF(A3-A2<0,MAX(OFFSET(B2,0,,-A2)),"") D2: =IF(A3-A2<0,IF(COUNT(C$2:C2)=1,"",C2-OFFSET(C2,-A2,)),"")

noname#128465
質問者

お礼

うまく処理することが出来ました。 大変助かりました。ありがとうございました。 PCの調子が悪くなって、修復に時間を取られてお返事が 遅くなってしまいました。申し訳ありません。

その他の回答 (1)

  • nekoron07
  • ベストアンサー率37% (69/184)
回答No.1

C2のセルには =IF(A3=1,B2,"") C3のセルには =IF(OR(A4=1,A4=""),IF(A3=1,B3,MAX(INDEX(B:B,ROW()-A3+1,1):B3)),"") と入力して下にコピー D3のセルには =IF(OR(A4=1,A4=""),IF(ISERROR(C3-OFFSET(A3,-A3,2)),"",C3-OFFSET(A3,-A3,2)),"") と入力して下にコピー でどうでしょうか。

noname#128465
質問者

お礼

うまく処理することが出来ました。 大変助かりました。ありがとうございました。 PCの調子が悪くなって、修復に時間を取られてお返事が 遅くなってしまいました。申し訳ありません。

関連するQ&A

  • 寒暖差が大きい時の服装選び

    最低気温が9度、最高気温が22度とかなり1日の中で寒暖差がある時は、どんな服装が適しているのでしょうか。天気は晴れです。

  • エクセル空白セルの計算

    エクセル2000です。 データ値    差値 C3 100    D3 C4 150    D4   50 C5 空白    D5   C6 180    D6   30・・・C6-C4の値 C7 空白   D7 C8 空白   D8 C9 300    D9   120・・・C9-C6の値 C10 350    D10 50 C行に数字を入力し、D行でC4とC3行の差値(次行との差値)を出したいです。 C行に空白がつづいても差値が出せる方法が分かりません。空白が無ければ =IF(C4="","",C4-C3)でいいのですが・・・ ご教授よろしくお願いします。

  • 明日の江ノ島は半袖でいいですか?

    明日と明後日、江ノ島に行くのですが、 土曜日の天気は 晴れのち雨 最高気温29度 最低気温22度 日曜日の天気は 曇ときどき雨 最高気温は26度 最低気温は22度 です。 22度だと半そででいいかなーと思うのですが 江ノ島は海だし 土日で雨も降るし 半そででは寒くなりますか? 10年近く海に近づいて無いので海での体感温度がわかりません どんなもんでしょうか?

  • エクセルでセルの位置を変えて差を求める

    100日分のデーターがあり、 A2以下A列に日付。 B2以下B列に温度。 C1に、比較日を入力。 C列にて温度差を求める。 たとえば、C1に2と入れると、C4にB4とB2の温度差。C5以下同様。 C1の数値を変えて比較値を求めたい。

  • 雨の日は最高気温と最低気温の差が小さいのはなぜです

    雨の日は最高気温と最低気温の差が小さいのはなぜですか。

  • ある条件下でIF関数により取り出した数値を計算する方法

    エクセル関数です。2つの数字の変化が A列  B列 100    1 103    1 109    1 120    1 105    -1 102    -1 120    1 123    -1 ・    ・ の時に,以下の2つの条件を満たす式を作る。(1)B列の数字を3行ずつ見てゆく。3行目までずっと1が続き,数字が変わらなければ(-1が出なければ)3行目のA列の数値(109)を取り出す。(2)数字を取り出してから次の3行目までの間でB列の数字が変わったとき(1→-1,-1→1)には,変わった行のA列の数値(105)を取り出す。次はB7なので120,次はB8なので123…と数字を取り出す度にリセットして,新たに3行の中から新しい数字を取り出す。 (頂いた回答) 3列使います。C4=IF((B3=B2)*(B4=B3)*(SUM(C$2:C3)=0)=1,1,0)。D4=IF(B4<>B3,1,0) E4=A4*(C4+D4)。 リセットする毎に,リセットした時点のA列の数字から取り出したA列の数字を引き算したいのですが,良い関数が思いつきません。

  • エクセルMAX1とMAX2の間MINの求め方

    すいません。 こんなこと出来ますでしょうか? A列に日付 B列に最高気温 C列に最低気温 そして、D列に4/1から付け始めて、最高気温を更新したら、ナンバー(時系列に1から)を入れます。つまり、更新しない日は空白。 そして、そのナンバーの入っている、最高気温更新日から、その次の更新日の間の最低気温を摘出したい。

  • 計算式の貼付けについて

    初歩的なことかもしれませんが、教えてください。    A  B  C  D 1 10  =A5 =B5 =C5 2 20     =B6 =C4 3 25     =B7 =C3 4 18     =B8 =C2 5 12     =B9 =C1 セルB1の式をコピーしてCの列に貼り付けると通常C列ように張り付きますよね、D列のように行数が減るように貼り付けるにはどのようにすればよいのでしょうか?

  • 春秋で本州の1日の気温差が激しい理由

    現在の天気予報を確認すると、同じ晴れた日であっても沖縄では最低気温と最高気温の差は5度前後、本州(東京)では10度以上開く日が珍しくありません。特に今週は最高気温が30度で最低気温が18度なんて日もあります。 なぜ、本州では沖縄より気温が高くなる日があるのに最低気温は大きく下がり、気温差がこんなに開いてしまうのでしょうか?

  • エクセル2000の計算式の範囲の固定

    簡単な計算式の入力(範囲指定)がしたいのでわかる方 ご教授ください。 以下のようなデータがあります。    A列 B列  1 い支店 15  2 ろ支店 6 3 は支店 80 4 に支店 112 5 ほ支店 15 6 へ支店 6 7 と支店 32 以下1400行ほど これらのデータを C列には「セルC1」から1~1400という数字を入力し D列に計算式(B2:B1400,C2)を入れました。 コピー&ペーストをするとD2は=COUNTIF(B2:B1400,C2) D3は=COUNTIF(B3:B1401,C3)、D4は=COUNTIF(B4:B1402,C4)・・・となり、 本来入れたい式D3=COUNTIF(B2:B1400,C3)、D4=COUNTIF(B2:B1400,C4)・・・とは範囲の部分が一つずつずれてしまいます。 この計算式の範囲「B2:B1400」を固定したままにすることはできないのでしょうか。 教えてください。

専門家に質問してみよう