A 回答 (6件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
こんばんは
両方のリストに出ていない人を特定したいということだと解釈しました。
リストの人数差が6でも、上記に該当する人数が6人とは限りませんね。
方法としては、「一方のリストから他方のリストに一致する名がない」ものを抜き出せば良いと考えられます。
(それぞれのリストに対して行う必要がありますが)
添付図は簡略化してありますが、A列、B列がそれぞれのリストと仮定しています。
D、E列にそれぞれ他方のリストに載っていない人をピックアップしています。
(リストの人数差は1人ですが、結果的に5人が該当しています)
FILTER関数が使える環境だとして、
D2セルに
=FILTER(A2:A500,(A2:A500<>"")*(COUNTIF(B:B,A2:A500)=0))
E2セルに(列を入れ替えて)
=FILTER(B2:B500,(B2:B500<>"")*(COUNTIF(A:A,B2:B500)=0))
を入力してあります。
※ 上式はA2:B500の範囲を想定してあります。
※ FILTER関数が利用できない場合は、ローテク関数でも可能ですが、式が長く、面倒になります。
No.2
- 回答日時:
自分なら、Aのリストのほうに
条件付き書式に対して「数式を使用して、初期設定するセルを決定」に
=NOT(COUNTIF(Bリストの範囲,Aリストの一人))
=NOT(COUNTIF($B$1:$B$468,A1))
のように設定するかな。
こうやってBリストにない場合に色を付ける。
同様に、Bリスト側にもAリストとの比較を入れれば、Bリスト側にも足りない人がいないかも確認する。
No.3
- 回答日時:
TEXTSPLIT関数が
使用可能なら
D1=filter(unique(transpose(textsplit(textjoin("/",1,A1:B15),"/"))),countif(transpose(textsplit(textjoin("/",1,A1:B15),"/")),unique(transpose(textsplit(textjoin("/",1,A1:B15),"/"))))=1)
使用不可なら
D1=iferror(indirect(address(int(1/large(index((countif($A$1:$B$15,$A$1:$B$15)=1)/(row($A$1:$B$15)+column($A$1:$B$15)/10),0),row(A2))),mod(1/large(index((countif($A$1:$B$15,$A$1:$B$15)=1)/(row($A$1:$B$15)+column($A$1:$B$15)/10),0),row(A2)),1)*10)),"")
下へフィルコピー
No.4
- 回答日時:
AのリストがA列に、BのリストがB列にあるとして回答します。
C1セルに『=IFERROR(MATCH(A1,B:B,0),A1)』を入力して、データ最下行までコピペします。C列に表示されている名前がB列に存在しない名前です。
500個近くデータがありますので、C列をコピーして使用していない他の列(G列など)に値で貼り付けて降順で並べ替えを行えば名前が上のほうになります。
No.5
- 回答日時:
このご質問は、ご質問の前提が不明確なので、回答もまちまちになっていると思います。
>Aのリストには474人,Bのリストには468人
とのことですが、Aのリストの474人の中に重複があることはないのでしょうか? また、Bの468人の中には重複はないのでしょうか?
仮に「各々のリストには重複はない」というのであれば、「全体での重複即ち他リストにあり」という意味になるので、A列にAリストの468人を並べ、B列に474人を並べて、データのある範囲を選択したうえで条件付き書式を設定するだけです。
ホームメニュー⇒条件付き書式⇒新しい書式ルール⇒一意の値または重複する値だけを書式設定⇒「すべての値を書式設定」の下のドロップダウンリストの「重複」を確認⇒書式ボタンを押す⇒塗りつぶしタブから好みの色(添付画像ではグレー)を選択⇒OKを押す⇒OKを押す
これで、添付画像①のような状態になります。
これは、Belltreeriverさんのお示しになった例に、そのまま条件付き書式を設定したものです。
Belltreeriverさんのお示しになった画像と同じになっていることが判ります。つまり、Belltreeriverさんの数式と同じ結果になります。
この状態でオートフィルター⇒色フィルター⇒「塗りつぶしなし」を選択を用いてA列、B列を別々に絞り込みすれば添付画像②③のように差分が明らかになります。
また、Aのリスト、Bのリストに追加があって、現在の行の下に新たなデータを記入した場合でも、自動的に条件付き書式が機能して塗り分けられるので便利です。数式は必要ないということになります。
但し、Aのリストそのもの、またはBのリストそのものに重複がある場合、「【全体での重複即ち他リストにあり】とは言えない」ので、この方法は(Belltreeriverさんの数式も含めて)使用できないということになります。
No.6
- 回答日時:
No.5です。
前回回答で「Aのリスト、Bのリストのそれぞれには重複がない」という前提での解決方法を投稿いたしました。
しかし、「Aのリスト、Bのリストのそれぞれに重複がある」というケースも当然考えられます。この場合の差分を抽出する数式を投稿します。
この場合、fujillinさんのご指摘のとおり「一方のリストから他方のリストに一致する名がない」ものを抜き出すことになります。
従って、A⇒B、B⇒Aの両方向からチェックする必要があり、fujillinさんの回答にあるように、2列に分けて表示するのが正統派の考えだと思います。
ただ、既に、fujillinさんが回答を示されているので、ここでは差分を1列にまとめて表示する数式にしてみました。
添付画像をご覧ください。
添付画像のように、A列にAのリスト、B列にBのリストがあったとして、E2から下方向へ差分を表示するため、E2セルに
=IFERROR(SUBSTITUTE(LEFT(","&TEXTJOIN(",",1,IFERROR(INDEX($B$2:$B$30,ROW($A$1:$A$29)/(ISERROR(INDEX($A$2:$A$30,MATCH($B$2:$B$30,$A$2:$A$30,0)))*($B$2:$B$30<>"")*(MATCH($A$2:$A$30,$A$2:$A$30,0)=ROW($A$1:$A$29))))&"",""))&","&TEXTJOIN(",",1,IFERROR(INDEX($A$2:$A$30,ROW($B$1:$B$29)/(ISERROR(INDEX($B$2:$B$30,MATCH($A$2:$A$30,$B$2:$B$30,0)))*($A$2:$A$30<>"")*(MATCH($B$2:$B$30,$B$2:$B$30,0)=ROW($B$1:$B$29))))&"","")),FIND("♪",SUBSTITUTE($M$2,",","♪",ROW(A2)))-1),IF(ROW(A1)<2,",",","&TEXTJOIN(",",1,$H$1:H1)&","),""),"")
という数式を記述しています。
この数式はUNIQUE関数、TEXTSPLIT関数が使用できない前提で作成しているため、とても長いものになっています。
また、上記関数の使用できない環境ではスピル機能も使えないと思いますので、数式を数式バーに入力後、ENTERキーではなく、CTRL+SHIFT+ENTERで確定する必要があると思います。
これを下方向へコピーすることになります。
逆に、UNIQUE関数、TEXTSPLIT関数が使用できる場合の数式として、F2セルに
=UNIQUE(TEXTSPLIT(TEXTJOIN(",",1,IFERROR(INDEX(B2:B30,ROW(A1:A29)/(ISERROR(INDEX($A$2:$A$30,MATCH(B2:B30,$A$2:$A$30,0)))*(B2:B30<>"")))&"",""))&","&TEXTJOIN(",",1,IFERROR(INDEX(A2:A30,ROW(B1:B29)/(ISERROR(INDEX($B$2:$B$30,MATCH(A2:A30,$B$2:$B$30,0)))*(A2:A30<>"")))&"","")),,","))
という数式を記述しています。
こちらは、F2セルに記述すれば、スピル機能により、F2より下のセルも自動的に表示されるはずです。
※スピル機能が有効である前提のため、セル参照の相対参照、絶対参照がまちまちになっています。また、UNIQUE関数、TEXTSPLIT関数が使用できない環境でのチェックは行っておりませんのでご容赦ください。
画像のとおり、どちらも同じ結果が表示されます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
高2女子です。レイプされたい願...
-
過去にある過ちをしてしまい。...
-
両方を逆数にしてもイコール関...
-
人を陥れたりするずるい人の末...
-
孤独は自業自得ですか?誰から...
-
タイミーについてです。 タイミ...
-
誰かの為に の 為に とはどうい...
-
誰からも必要とされない人生
-
いくら眠りの深い人でも、寝て...
-
アーセナルの胸スポンサー O...
-
「誰かの居場所を奪う」とは、ど...
-
「誰からとなく」について
-
逆ギレや逆恨みをすると何をす...
-
月のうらに誰か住んでいると言...
-
薬物動態の質問です。 fubとfuB...
-
古語に翻訳してほしいです
-
四苦八苦の反対語や反対四文字...
-
顔文字!!
-
コインパーキングでのトラブル...
-
どうする? と どうしよう?...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
高2女子です。レイプされたい願...
-
両方を逆数にしてもイコール関...
-
過去にある過ちをしてしまい。...
-
誰からも必要とされない人生
-
人を陥れたりするずるい人の末...
-
アーセナルの胸スポンサー O...
-
タイミーについてです。 タイミ...
-
孤独は自業自得ですか?誰から...
-
「誰からとなく」について
-
月のうらに誰か住んでいると言...
-
お礼をしないという事を
-
「誰かの居場所を奪う」とは、ど...
-
いくら眠りの深い人でも、寝て...
-
無人ATMの監視カメラは常に誰か...
-
誰かの為に の 為に とはどうい...
-
母親が家庭菜園できゅうり作り...
-
古語に翻訳してほしいです
-
個人で一般には公開しないHPを...
-
小数と整数に分ける関数(方法...
-
孤独を苦労だと思わない人って...
おすすめ情報