« [Excel] エクセルの表から、空白行を除いて、上に詰めた表を作る方法(関数利用) | トップページ | [Excel] グラフのマーカーを間引きたい »

[Excel] エクセルの表から、重複を省いて、上に詰める(関数利用)

例:以下のようなA列のデータから,重複を省いて,D列のようにしたい

A列  B列   C列   D列
------------------------
in   初出# #  out    ←1行目(タイトル)
100   1  1  100
  90    2  2   90
  90      3     50
  50      3    4     10
  50       
  10      4   
  50
  10
--------------

方法:

1)B列に,初出なら順番を,重複なら空白を入れる

  B2 =IF(COUNTIF($A$2:A2,A2)=1,MAX($B$1:B1)+1,"")

2)C列に,1,2,3・・・と順位を入れる

3)D列に,詰めたデータを入れる

  D2 =OFFSET($A$1,MATCH(C2,$B$2:$B$10,0),0)

備考:
1)COUNTIF関数は,[検索範囲]において[検索条件]に一致するセルの数をカウントする.書式は,COUNTIF(検索範囲,検索条件)

2)OFFSET関数は,基準のセルから指定行数・列数分シフトさせた位置にあるセル参照を返す.書式は,OFFSET(基準,行数,列数,高さ,幅)

3)MATCH関数は,特定の値を検索し,検査範囲内での相対的な位置を返す.書式は,MATCH(検査値,検査範囲,照合の型)

------------------------------------------------------------
注:関数を使用せず,以下のオートフィルタ機能による方法もある.

1)「データ」→「フィルタ」→「フィルタオプションの設定」

2)「フィルタオプションの設定」ダイアログボックスで、次のように設定する
   抽出先 → 選択範囲内
   リスト範囲 → 重複を省きたいデータが入力されている範囲
   重複するレコードは無視する → チェックを入れる

3)OKボタンをクリック

注:重複行が非表示になる.これをコピー&ペーストすれば良い

|

« [Excel] エクセルの表から、空白行を除いて、上に詰めた表を作る方法(関数利用) | トップページ | [Excel] グラフのマーカーを間引きたい »

パソコン・インターネット」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック


この記事へのトラックバック一覧です: [Excel] エクセルの表から、重複を省いて、上に詰める(関数利用):

« [Excel] エクセルの表から、空白行を除いて、上に詰めた表を作る方法(関数利用) | トップページ | [Excel] グラフのマーカーを間引きたい »