• ベストアンサー

前月比を出したいです

収支の表を作っています。   1  2  3  4・・・ A 4月 5月 6月 7月・・・ B 10  20 10  30 毎月月初にB13に、前月との差を求めたいのですが、今は毎月A2-A1と地道に変えています。このような表がいくつもあるため、できれば月初に数値を埋めたら、前月との差が出るような式を入れたいのですが・・・いい方法があったら教えてください!

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

  • ベストアンサー
  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.2

#01です もしかして質問で書かれているデータ配列は、実際のシートと縦横が逆ですか? もしそうだとすればB13の式は以下のようになります。(Shift+Ctrl+Enterで確定) =OFFSET($B$1,MAX(IF(B1:B12<>"",ROW(B1:B12)))-1,0)-OFFSET($B$1,MAX(IF(B1:B12<>"",ROW(B1:B12)))-2,0) 質問文に実際のデータ例を書くときは、シートと同じ並びで書いてくださいね。すごく混乱します。

mipmip
質問者

お礼

ご回答ありがとうございます。質問のと実際のものも、縦横同じです。だいぶ難しい関数の組み合わせなんですね。よく考えて解読して、使わせていただきます!ありがとうございました。

その他の回答 (1)

  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.1

質問の例では8月以降の欄は空白であるとします B13に以下の式をペーストしてShift+Ctrl+Enterで確定します(配列数式にします) =OFFSET($A$2,0,MAX(IF(A2:L2<>"",COLUMN(A2:L2)))-1)-OFFSET($A$2,0,MAX(IF(A2:L2<>"",COLUMN(A2:L2)))-2) すると20という結果が得られるはずです。8月の欄に数字を入れるとその差分が自動で計算されます。 ただし4月の数字しかないときは#REF!エラーになります。IF関数でエラー処理を組み込んでも良いのですが、式が長くなるのでそれは記述しません。 #REF!を表示したくないならB13に条件付き書式で 「数式」「=ISERROR(B13)」のとき「文字の色を白にする」で実用上は問題がなくなるでしょう

関連するQ&A

専門家に質問してみよう