質問: ネストされたifステートメントを使用したexcelmin-日付から30日後の日付に最も近い日付を識別しようとしています オークション日付のある16k以上のレコードがあります。オークション日に最も近い日付と金額を見つける必要がありますが、30日以上後です。オークションの日付とその後の各販売の違いを示す行を計算しました。私のアプローチは、オークション日から30日以上経過した最小の差を見つけることでした。これは私が使用した式です:=min((if((b12-a12)>30,(b12-a12),0)),if((e12-a12)>30,(e12-a12),0),if((h12-a12)>30,((h12-a12)),0)) サンプルデータで正しい結果を1回だけ返します。 (画像を参照-黄色=オークションの日付、緑=正しい情報、赤=正しくない)次に、1,000ドル未満の売上を結果から除外する必要があります。しかし、私は最初に彼の公式の一部を正しく理解する必要があります。
回答: この情報が説明にどのように適用されるかはわかりませんが、ifステートメントがfalseに解決されるたびに最小値_0_を提供しているため、数式は機能しません。この変更は機能します:=min((if((b12-a12)>30,(b12-a12),1000000)),if((e12-a12)>30,(e12-a12),1000000),if((h12-a12)>30,((h12-a12)),1000000))_1000000_の代わりに_0_を使用しましたが、予想よりも大きい場合は任意の数値で機能します。注:基準を満たす日付がない場合、これは_1000000_を返します。変更を確認できるように数式を同じに保ちましたが、列c、f、およびi、つまり_c12=b12-a12_などの差を既に計算しているため、次のように簡略化できます。=min((if(c12>30,c12,100000000)),if(f12>30,f12,1000000),if(i12>30,i12,1000000))そして、実行できる他の単純化がありますが、これでうまくいくはずです。