dポイントプレゼントキャンペーン実施中!

ご存知の方、いらっしゃいましたらお願いします。
Excelは2003を使用しています。

複数の条件での抽出で名前が決まっているものは「フィルタオプションの設定」で行っていますが、日付が古いもの、新しいものの抽出方法がわかりません。
「同じ商品名」かつ「日付が古いもの」を抽出したいのですが、それが出来そうな関数、マクロはありますでしょうか。
当方マクロ知識は「マクロの記録」程度です。

A列  B列    C列
商品A 2007/12/01 10:00
商品B 2008/04/01 10:00
商品A 2008/05/01 10:00

現在は目視、手動で★印を別列につけ、それを抽出し削除しています。
削除フラグとして★印等をつけるようなものでも、わかれば嬉しいです。

A 回答 (5件)

1.商品名を第1キー、日付を第2キーとして昇順に並び替えます。


2.D1に1を入力し、D2からは=IF(A1=A2,0,1)を入力して下方向へコピー

これでD列の「1」のみ抽出して削除します。
    • good
    • 5
この回答へのお礼

削除したいものが抽出できました。
ありがとうございました!

お礼日時:2008/08/01 12:47

ANo.3の回答の式は「最古のみ」だったので改良。



=IF(MAX(IF($A$1:$A$100=$A1,$B$1:$B$100,-1))=$B1,"最新","古い")
Ctrl+Shift+Enterで入力するのをお忘れなく。

これで「最新」と「古い」に分けられます。

なお「同じ日付2つ以上あって、その日付が最新の場合」は「同じ日付のどれもが最新」になるので、目で見て判断して下さい。
    • good
    • 3
この回答へのお礼

お礼が遅くなってしまい申し訳ありません。

この方法だと、やりたいことが出来ました!
一定の期間を経過したもの~等ではないので、とりあえず最新のもののみ抽出したかったので、とても助かりました。

ありがとうございました!

お礼日時:2008/08/18 10:53

「日付が古いもの」だけでよろしいのでしょうか?


C列の時刻も含めて古いものとかは?
別案ですが
ピボットテーブル作成して
A列を縦 B列を集計内に入れて 
集計欄のフィールドの設定で 最小値を選択する
方法があります。

日付、時刻も含めてであれば 作業列をD列に作成
=B2+C2 下フィルして
D列で集計 最小値を表示 
表示書式は ユーザー定義で yy/mm/dd hh:mm とか
    • good
    • 1
この回答へのお礼

回答ありがとうございます。
ピボットテーブルが良くわかっていないので、いったんはIF関数でやってみます。
次回、何かの時にピボットテーブルを学んでみたいと思います。

お礼日時:2008/08/18 10:57

最小の日付を見つけるなら


D列にて
D2=MIN(IF($A$2:$A$100=$A2,$B$2:$B$100,MAX($B$2:$B$100)))
でCtrl+Shift+Enterで配列数式にする。

削除フラグを立てるなら
D2=IF(MIN(IF($A$2:$A$100=$A2,$B$2:$B$100,MAX($B$2:$B$100)))=$B2,"","★")
でCtrl+Shift+Enterで配列数式にする。
    • good
    • 3
この回答へのお礼

削除フラグを付ける方法でやってたところ、
重複していないもの=空白(問題なし)
重複している商品名=一番日付が古いものが空白
         =一番日付が古いもの意外に★
となりました。
この関数を調べていろいろ試してみたいと思います。
配列数式というのをもう少し学んでみます。。。

ありがとうございました!

お礼日時:2008/08/01 12:59

リストの最初の行ににフィールド名を付けてください。



>日付が古いもの
オートフィルターならば商品名で抽出して、
日付のフィールドを昇順に並び替えると古い順に並びます。

日付が古いものを抽出という内容だと、漠然として絞りきれませんが
何月何日より古い日付とかだと、オートフィルターオプションで日付を入力して、~より小さい、~以下等で抽出できます。

フィルタオプションの設定を使うなら
商品が商品Aで2007/8/1より前のデータという設定だと条件を

商品名  日付
商品A  <2007/8/1

のように設定します
    • good
    • 0
この回答へのお礼

日付はバラバラなのでどうやら無理そうですが、フィルタオプションの以上以下の設定は勉強になりました。
ありがとうございました!

お礼日時:2008/08/01 12:29

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

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A