アプリ版:「スタンプのみでお礼する」機能のリリースについて

エクセルにて、例えば売上日がA列、B列以降にその月の値を並べます。
月はどんどん追加していきますが、出したいのは、売上日から直近3ヶ月の値のうち、一番小さい値、です。

例えば以下の例の行2の場合、売上日3/1なので、3月から5月の間で一番小さい値、4月の‘9’、行3の場合‘11’、行4の場合‘8’を算出したいのです(4月~6月の値で一番小さいのが8なので)。

  A    B   C   D   E   F
1 売上日 3月 4月 5月  6月 7月
2 3/01  10   9  12  13   8
3 4/10  10   11  13  12  12
4 4/11   7   10   9   8   11
5 5/22  20   18  18  15  15

それを計算式で算出することは可能でしょうか。もしくはマクロなどが必要でしょうか、教えてください、どうぞよろしくお願いします。

A 回答 (1件)

=MIN(INDIRECT(ADDRESS(ROW(),MONTH(A2)-1)):INDIRECT(ADDRESS(ROW(),MONTH(A2)+1)))



ただし、この式では、列番号は MONTH(A2) を利用していますので、1~2月の場合はうまくいきません。

1~2月の場合も正しく表示するには、月をIF文で判定して列番号を変える必要があります。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます!

Rowestが、売上日以降3カ月の値から算出したいので、売上が4月の場合、4月~6月の中からRowestを出したいのです、言葉足りず、そしてややこしくてすみません。

私もいただいた式を参考に、勉強してみます。

お礼日時:2009/08/21 15:06

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!