[[20070522161104]] 『VLOOKUPで検索後の最大値表示』(H_KOWA) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

 『VLOOKUPで検索後の最大値表示』(H_KOWA)

 [SHEET2]に[SHEET1]の最新日付を表示したいのですができません。
 (下記表のような表示が出来ない)
 [SHEET2]日付には
 =IF(ISERROR(VLOOKUP(A2,HYOU,2)),"",VLOOKUP(A2,HYOU,2))としています。
 どうすればよいのでしょうか。

 また関数では下記のように表示は出来ないでしょうか。

 [SHEET1]
 番号     日付 
 A01      2004/4/3
 C01      2004/4/3
 D01      2004/4/3
 F02      2004/4/3
 H01      2004/4/3

 A01      2005/6/3
 C01      2005/6/3

 A01      2006/6/3

 [SHEET2]
 番号     日付 
 A01      2006/6/3
 C01      2005/6/3
 D01      2004/4/3
 F02      2004/4/3
 H01      2004/4/3

 [エクセルのバージョン]
 Excel2003

 [OSのバージョン]
 WindowsXP


 統合を利用するものが簡単のようにお見受けしますが、
 =VLOOKUP()を使用するものでは、このようなことでは、どうでしょう?

 Sheet2のB2に
 =IF(SUMIF(Sheet1!A$2:A$11,A2,Sheet1!B$2:B$11)=0,"",
 VLOOKUP(9^9,IF(Sheet1!A$2:A$11=A2,IF(Sheet1!B$2:B$11>0,Sheet1!B$2:B$11)),1))
 として、Ctrl+Shift+Enterとして、下にフィルドラッグ。
 Sheet1のB列は、昇順に配置しているものとしています。     (6UP)

 == Sheet1 ==
  A   B
 1 番号  日付 
 2 A01  2004/4/3
 3 C01  2004/4/3
 4 D01  2004/4/3
 5 F02  2004/4/3
 6 H01  2004/4/3
 7
 8 A01  2005/6/3
 9 C01  2005/6/3
10
11 A01  2006/6/3

 == Sheet2 ==
  A   B
 1 番号  日付
 2 A01  2006/6/3
 3 C01  2005/6/3
 4 D01  2004/4/3
 5 F02  2004/4/3
 6 H01  2004/4/3
       ↑
 =IF(SUMIF(Sheet1!A$2:A$11,A2,Sheet1!B$2:B$11)=0,"",
 VLOOKUP(9^9,IF(Sheet1!A$2:A$11=A2,IF(Sheet1!B$2:B$11>0,Sheet1!B$2:B$11)),1))


 早期回答有り難うございます。(H_KOWA)

 上記で出来ませんでした。どこがいけないのでしょうか。
 番号ですか?
 まだ関数について分かり切って使用していないので申し訳ございませんが、
 ”総合”を利用するとはどういうことでしょうか。
 教えて頂ければ幸いです。

 >上記で出来ませんでした。
 ……として、Ctrl+Shift+Enter
 これを実行されましたか?

 >”総合”を利用するとはどういうことでしょうか。
 統合です。
 画面のとおり実行しますと、大抵は、完成できます。
 (6UPは、そのようにしてExcelを覚えました。)

 操作方法は、
 Sheet2のA1:B1を選択し、データ、統合として、出現した画面で
 集計の方法に最大値、統合元範囲にSheet1!$A$1:$B$11を追加で登録し、
 統合の基準に、上端行、左端列ともにチェックし、OK。とします。

 途中図 
 == Sheet2 ==
  A   B
 1 番号  日付
 2 
 3 
 4 
 5 
 6                             

 数式の方は、ご注文の=VLOOKUP()以外では、このようにも書くことができますね。
 =IF(SUMIF(Sheet1!A$2:A$11,A2,Sheet1!B$2:B$11)=0,"",
 MAX(IF(Sheet1!A$2:A$11=A2,IF(Sheet1!B$2:B$11>0,Sheet1!B$2:B$11))))
 こちらも、Enterの代わりにCtrl+Shift+Enterです。           (6UP)

 衝突〜。でもそのままUPしま〜す。
 VLOOKUPではありませんが.....
 Sheet2のB2に
 =IF(A2="","",MAX(IF(Sheet1!$A$1:$A$100=A2,Sheet1!$B$1:$B$100,"")))
 として、Ctrl+Shift+Enterとして、下にフィルドラッグで如何でしょうか。
   (SS)


 こんにちは〜♪

 >衝突〜。でもそのままUPしま〜す。
 その2です。。

 (SS)さんと変わりませんが〜。。。

 Sheet2の
 B2セルへ

 =IF(A2="","",MAX(INDEX((Sheet1!$A$2:$B$100=A2)*(Sheet1!$B$2:$B$100),)))

 。。。Ms.Rin〜♪♪


 補足です。
 Sheet1!B$2:B$11>0は、番号があり日付が未入力の場合の対処です。
 6UPは、日付データ処理には、必要だと思っています。
 しかし、掲載のMAX()で処理する方は、SUMIF()でチェックしていますので、
 無用でした。                            (6UP)

遅くなりました済みません。皆様回答有り難うございました。

出来ましたので助かりました。(H_KOWA)


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.