2016-09-12 12 views
0

あなたはうまくいきますように。別のセル値に基づいて特定のセル値を取得

現在、別のセルの値に基づいて特定のセルの値を取得しようとしています。

あなたは以下の例を取る場合:

Sample

私は何を達成しようとしていることはかなり単純です。 C1では、C列に最新の値を取得する式を追加する必要がありますが、使用する必要がある値には列Dの「はい」値が割り当てられている必要があります。上記の例では、私が達成したいと思っているものの、それに番号72をハードコードしました。理想的には、D(D5)列に72(セルC5内)に「はい」があるため、この式は自動的にこの値を取得します。

この式を作成する方法についてはあまりよく分かりません。

ありがとうございます。

+0

最後の「はい」の上には常に「はい」、または「いいえ」が混在することはありますか?これは何行になりますか? – Kyle

答えて

0

C1=LOOKUP("Yes", D4:D1000, C4:C1000)を入力します。

これは最後の "Yes"を検出し、隣接するCセルの値をC1に戻します。

ダイナミックレンジはありますか?それともあなたの日付に基づいていますか?上記の式は、日付順にテーブルをソートする場合にのみ有効です。

ダイナミックレンジの場合、名前付き範囲を使用して作業を簡略化できます。以下のようなあなたの各列に名前を付ける:

=OFFSET(Sheet1!$A$4,0,0,COUNTA(Sheet1!$A:$A),1)

リコンサイル私たちは、その後の最新の値を見つけるために提供式grab74との組み合わせで、これらの名前付き範囲を使用することができます=OFFSET(Sheet1!$D$4,0,0,COUNTA(Sheet1!$D:$D),1)

enter image description here

調整の下で「はい」とマークされた項目。セルで

C1=VLOOKUP(MAX(INDEX(Date*(Reconcile="Yes"),,)),Date:Reconcile,3,FALSE)

を入力するには、今すぐに関係なく、あなたが過去4行目を持っているどのように多くのエントリ、セルC1は常にあなたの最も最近和解した項目の値が表示されます。

何らかの理由であなたが名前付き範囲を使用したくない、とあなたは本当に長いforumlaでは、次のC1に入れることができますしたい場合:

=VLOOKUP(MAX(INDEX(OFFSET(Sheet1!$A$4,0,0,COUNTA(Sheet1!$A:$A),1)*(OFFSET(Sheet1!$D$4,0,0,COUNTA(Sheet1!$D:$D),1)="Yes"),,)),OFFSET(Sheet1!$A$4,0,0,COUNTA(Sheet1!$A:$A),1):OFFSET(Sheet1!$D$4,0,0,COUNTA(Sheet1!$D:$D),1),3,FALSE)

0

あなたはまた、次のことを試すことができます。

=VLOOKUP(MAX(INDEX(A4:A1000*(D4:D1000="Yes"),,)),A4:D1000,3,FALSE) 

column Dの値が "はい"であるかどうかをチェックします。その場合、column Aのセルには1(TRUE)が掛けられ、それ以外の場合は0(FALSE)が掛けられます。 その後、最新の日付の最大値を取得し、対応する金額を返します。

多くのデータがある場合、処理が遅くなる可能性があります。

関連する問題