- ベストアンサー
エクセルでこんなこと出来ますか?
A 1 月/日 2 4/10 3 4/23 4 4/15 5 4/10 6 4/8 というデータがあるとします。 そのデータ下の方に自動的に日付の若い順に重複データは1行のみの表示をさせる(下のような感じ)良い方法はありませんか?できればVBAでない方が嬉しいのですが… 11 4/8 12 4/10 13 4/15 14 4/23
- みんなの回答 (8)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
個人的には yesletsさんがおっしゃる通り フィルタオプションの 設定が良いと思います。関数でやるなら ■A11セル =IF(COUNT(A2:A10),MIN(A2:A10),"") ■A12セル =IF(A11="","",IF(MAX(A$2:A$10)=A11,"", LARGE(A$2:A$10,RANK(A11,A$2:A$10)-1))) 下方向にコピー でできます。
その他の回答 (7)
- imogasi
- ベストアンサー率27% (4737/17069)
エクセルで、セルに正式な日付け入力をすると、そのセルには、日付シリアル値(1900年1月1日以来の実日数)という正整数がセットされます。それで正整数の例で説明しても質問の場合にも当てはまります。 例データ A1:A10 12 11 13 12 10 6 11 10 2 2 例えばC1に =SMALL(IF(COUNTIF(OFFSET($A$1,0,0,ROW($A$1:$A$10)),$A$1:$A$10)=1,$A$1:$A$10,99999),ROW()) と入れて、 SHIFT、CTRL,ENTERの3つのキーを同時に押します(配列数式) そして、C1で、+ハンドルを出して下方向に引っ張ります。 結果 2 6 10 11 12 13 99999 この 99999 は、SMALL関数を使う関係で、最近の日付のシリアル値は3万8千台なので、将来にも、まず超えない数値ということで入れています。 その直前で式の複写を止めるか、=IF(上記式=99999,"",上記式) にするなどして、見えなくすることができます。
- sige1701
- ベストアンサー率28% (74/260)
A11:=MIN(A2:A6) A12:=SMALL($A$2:$A$6,COUNTIF($A$2:$A$6,"<="&A11)+1) エラー処理はしていません
- yeslets
- ベストアンサー率31% (47/151)
「自動的に」が入力をした時点で自動的に(つまり関数を使って)という意味なのか、単に「したい時」なのかわかりませんが、「したい時」ならば、 (1)A1にある文字列(月/日)と同じ文字列をA10に入力 (2)A1からA6を選択 (3)フィルタオプションの設定で 抽出先に「指定した範囲」を選択 リスト範囲A1:A6を確認(入力されているはず) 抽出範囲にA10:A15を入力 「重複するデータは無視する」にチェック 実行ボタンをクリック で出来ると思います。
補足
ありがとうございます。 自動は上部に入力した途端に表示されるイメージです。
- pauNed
- ベストアンサー率74% (129/173)
No.3追記です。 作業列使わない場合、 [A11]=SMALL(IF(COUNTIF(OFFSET($A$2,,,ROW($A$1:$A$5)),$A$2:$A$6)=1,$A$2:$A$6,""),ROW(A1)) と入力orコピーして、セル編集状態で、通常[Enter]キーのみ押すところを、 [Ctrl]+[Shift]+[Enter]キー同時押し。 配列数式です。 これを[A12:A15]へコピー。 (くどくなるので、エラー処理していません^ ^;)
- pauNed
- ベストアンサー率74% (129/173)
こんにちは。 例えば未使用列を作業用に使えるなら、一旦重複を排除します。(仮にB列) [B2]=IF(COUNTIF($A$2:A2,A2)=1,A2,"") B6までコピー。 [A11]=IF(COUNT($B$2:$B$6)<ROW(A1),"",SMALL($B$2:$B$6,ROW(A1))) A15までコピー。
1.セル A11 に次式を入力して、此れを下方にズズー ッと複写 =IF(ISERROR(SMALL(A$2:A$9,ROW(1:1))),"",SMALL(A$2:A$9,ROW(1:1))) 2.セル A11 以降全ての式を選択して[コピー]→[値 の貼り付け] 3.“重複するレコードは無視する”機能を適用して [フィルタオプションの設定]を実行
- gztar2005
- ベストアンサー率20% (15/73)
vlookupって関数を使うといいですよ。
お礼
/(??)
お礼
ありがとうございます。 関数でやりたかったのす。 この方法が私の求めていたものです。 いや~こんなこともできるんだというのが正直な実感です。 ほんとにありがとうございました。