- ベストアンサー
エクセル関数。何種類あるか知りたい。
よろしくお願いします。 A列に重複する取引先の名前が並んでいるとします。 このデータからB列に取引先名が重複しないようにしたいのですが いい方法はありますか? 取引先が何社あるかすぐにわかるような方法ありますか。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
A1からA10にリストがあるなら =SUMPRODUCT(1/COUNTIF(A1:A10,A1:A10)) で、何種類あるか出せます。 重複しないようにしたいのならリスト範囲を選択して、メニューの「データ」、「フィルタ」、「フィルタオプションの設定」で「重複するレコードは無視する」にチェックを入れて「OK」ボタンです。
その他の回答 (5)
- maron--5
- ベストアンサー率36% (321/877)
◆途中の空白や、範囲を大きく設定してもできますよ =COUNT(INDEX(1/(MATCH(A1:A100,A1:A100,)=ROW(A1:A100)),))
- imogasi
- ベストアンサー率27% (4737/17069)
A列A1:A20にに氏名があるとして =SUM(IF(COUNTIF(OFFSET($A$1:$A$20,0,0,ROW(A1:A20),1),A1:A20)=1,1,0)) と入れて、SHIFT+CTRL+ENTERの3つのキーを同時押しする。 (配列数式) 結果 10 例データ a f z a s a d g s z d w a x c d e g s s これは、上の行から見て、その行で初出かどうかを、=countif($a$1:A1)が1かどうかで 判別できるが、初出のときのみ1を足すということで上記の式が出る。 ーーーー 重複しないものの名前を別シートに作る方法は、OKWAVE回答で、imogasi方式で照会してくだされば、同タイプの質問の私の回答が沢山出ます。
- zap35
- ベストアンサー率44% (1383/3079)
質問がやや分かりにくいのですが、「A列に入力された重複有りのデータの中から、重複なしのリストを取りだしてB列に表示したい」ということであればフィルタオプションで可能です。 A列を選択し「データ」→「フィルタ」→「フィルタオプションの設定」を選択 「指定した範囲」にチェックし、「抽出範囲」は「B:B」とします。更に「重複データは無視する」にチェックを入れて「OK」 ただし1行目はタイトルと見なして重複データの削除対象にならないので、1行目にはタイトル行を入れておいて下さい。
- p-applepie
- ベストアンサー率53% (156/290)
並べ替えてIF関数を使用ではどうでしょうか。 A列に取引先名があるとして、A列を昇順に並べ替え B列の一番上の行には1と入力 B列の2行目(B3とします) =IF(A2=A3,B2+1,B2)と入力 これで、 社名(A) B A社 1 A社 1 B社 2 C社 3 C社 3 と振られますので最終行の番号が社名の数となります。 並べ替えをしない場合はピボットテーブルを使用して行の部分に 社名を持ってくると早いかと思います。 http://hp.vector.co.jp/authors/VA014071/tips/xl_pvt1.html http://hamachan.fun.cx/excel/piboto.html http://www.atmarkit.co.jp/fwin2k/win2ktips/359pivot/pivot.html
- ham_kamo
- ベストアンサー率55% (659/1197)
A列を選択して「データ」>「フィルタ」>「フィルタオプションの設定」を選択 「抽出先」に「指定した範囲」を選択し、下の「抽出範囲」にB列を指定 「重複したレコードは無視する」にチェックを入れて「OK」 これでB列に抽出されます。 なお、重複しないレコード数(取引先が何社あるか)は、 =SUM(1/COUNTIF(A2:A10,A2:A10)) という数式をセルに入力し、配列数式なのでCtrl+Shift+Enterで入力すれば求められます。 (1行目はタイトルとしてA2:A10の範囲にしています。実際にデータが入っている範囲に書き換えてください)