- 締切済み
(EXCEL)在庫管理表で、直近にある入荷数量を表示させたい。
(EXCEL)在庫管理表で、直近にある入荷数量を表示させたい。 在庫の個数を管理しているエクセル表があります。 一番左の列には、カレンダー式の日付が1日ずつ入力されています。 2008/02/14 2008/02/15 2008/02/16 . . . のようにです。 そして、日付と同じ行に、入荷のある日には、入荷予定の個数を入力しています。 この入荷予定個数の欄は、入荷のない日は空のセルになっています。 いま、やりたいとおもっていることは、今日から直近の日にちの入荷数量を表示させたいのです。 今日の日付をtoday()で表示させて、下のセルに、「直近の入荷数量」 「○○個」 と自動的に表示させるようにしたいのです。 よろしくお願い致します。
- みんなの回答 (7)
- 専門家の回答
みんなの回答
- maron--5
- ベストアンサー率36% (321/877)
◆こんな方法もありますよ ◆入荷個数は、予定(今日以降)も入力があるものとします A B 1 2008/2/16 2 直近の入荷数量 15個 3 4 2月12日 2 5 2月13日 14 6 2月14日 7 2月15日 15 8 2月16日 9 2月17日 10 2月18日 20 11 2月19日 12 2月20日 ★A1=TODAY() と入力します ★B2=LOOKUP(1,0/((A4:A20<=A1)*(B4:B20<>"")),B4:B20) ★表示形式を、 0"個" とします
#2です。 我ながら情けなくなりました。 =INDIRECT("B"&SUMPRODUCT(MAX(($A$2:$A$33<=$C$2)*($B$2:$B$33>0)*ROW($B$2:$B$33)))) が正しいです。 もう、信用無いですね。
再度#2です。 こんどは大丈夫です(ホントか?w) =INDIRECT("B"&SUMPRODUCT(MAX(($A$2:$A$20<=$C$2)*($B$2:$B$20>0)*$B$2:$B$20))) あと、その日付自体を表示したいなら、 =INDIRECT("A"&SUMPRODUCT(MAX(($A$2:$A$20<=$C$2)*($B$2:$B$20>0)*$B$2:$B$20))) それと、まさか「直近」とは将来の事ではないですよね? つまり、今日以降で入荷が予定されている日の入荷予定数量。 でも、要望としてはこちらの方があり得ますよね。 「次は何個入荷するんだっけ?」とか...
#2です。 大ポカでした。数式は忘れてください。
#2です。 私は、「直近の入荷数量」を「入荷のあった、直近の日付の入荷数量」と解釈したんですが... あと、この数式を入れたセルの表示書式を、 「"直近の入荷数量:"0"個";;」 とか 「"0"個";;」 としてみてください。 こうすると、D2の中身は、数値だけとなり、あとでこの計算結果を別の計算に使うことが出来ます。 数式自体で、 ="直近の入荷数量:"&SUMPRODUCT(MAX(($A$2:$A$33<=$C$2)*($B$2:$B$33>0)*$B$2:$B$33))&"個" と文言まで含めてしまうと、計算には使えません。エラーになります。
日付がA2からA33、入荷予定数がB2からB33に入っているとして また、今日の日付がC2とするなら、 D2に =SUMPRODUCT(MAX(($A$2:$A$33<=$C$2)*($B$2:$B$33>0)*$B$2:$B$33)) で如何でしょう。
- AKI78
- ベストアンサー率30% (9/30)
Vlookup関数で解決すると思いますよ☆ 例えば以下の表があるとすると A B C D 1 2008/2/16 ←ここにNow() 2 3個 ←ここに関数 3 4 2008/2/14 1 5 2008/2/15 2 6 2008/2/16 3 7 2008/2/17 4 A2のセル内に =VLOOKUP(A1,$A$3:$B$7,2,FALSE)&"個" と入れれば3個と表示されるはずです。 がんばってください。
補足
直近とは将来のことです。 今日以降で入荷が予定されている日の入荷予定数量を表示したいのです。