とある披露イベントを開催しました。当日来てくれた来場者の名簿があります(あるのは、名前だけです)。
また、それとは別にとある学校のOBリストがあります。
来場者名簿の中から、
学校のOBの人
OBではない人
を抜き出したいのですが、どうしたらいいでしょうか?
--
つまり、
●イベント来場者リスト(名前だけ)リストA
●OBリスト(名前だけ)リストB
の、2つのリストがあり、
リストAの中で、Bと合致する項目を抽出
リストAの中で、Bと合致しない項目を抽出
したいということです。
スッキリとしたマクロや関数で、スマートに処理したいと思っていますので、適した方法がありましたらご教示ください。
No.5
- 回答日時:
こんばんは!
すでに回答は出ていますので
参考程度で目を通してみてください。
一例です。
↓の画像の左がBOOK1で右がBOOK2になります。
BOOK1のD列を作業用の列とさせていただいています。
D2セルに
=IF(COUNTIF([Book2]Sheet1!A$2:A$1000,A2),1,"")
そして、B2・C2セルは配列数式になってしまいますので
この画面からコピー&ペーストしただけではエラーになると思います。
貼り付け後、F2キーを押すか、数式バー内で一度クリックします。
編集可能になりますので
Shift+Ctrl+Enterキーで確定してください。
数式の前後に{ }マークが入り配列数式になります。
B2セルは
=IF(COUNT($D$2:$D$1000)<ROW(A1),"",INDEX($A$2:$A$1000,SMALL(IF($D$2:$D$1000=1,ROW($1:$999)),ROW(A1))))
C2セルは
=IF(COUNTA($A$2:$A$1000)-COUNT($D$2:$D$1000)<ROW(A1),"",INDEX($A$2:$A$1000,SMALL(IF($D$2:$D$1000<>1,ROW($1:$999)),ROW(A1))))
として、Shift+Ctrl+Enterキーで確定です。
最後にB2~D2セルを範囲指定し、D2セルのフィルハンドルで下へコピーすると
画像のような感じになります。
尚、数式は1000行目まで対応できるようにしています。
以上、長々と書きましたが、参考になれば幸いです。
他に良い方法があれば読み流してくださいね。m(__)m
No.4
- 回答日時:
こんにちは。
VBAによる一例です。
前提として、
A列の2行目以降: イベント来場者リスト(名前だけ)
B列の2行目以降: OBリスト(名前だけ)
C列の2行目以降: リストAの中で、Bと合致する項目を抽出
D列の2行目以降: リストAの中で、Bと合致しない項目を抽出
Sub test()
Dim myRng1 As Range, myRng2 As Range, c As Range
Dim i As Long, j As Long
Dim myAns As Variant
Set myRng1 = Range("A2", Cells(Rows.Count, "A").End(xlUp))
Set myRng2 = Range("B2", Cells(Rows.Count, "B").End(xlUp))
i = 2: j = 2
For Each c In myRng1
myAns = Application.Match(c.Value, myRng2, 0)
If IsError(myAns) = False Then
Cells(i, "C").Value = c.Value
i = i + 1
Else
Cells(j, "D").Value = c.Value
j = j + 1
End If
Next c
Set myRng1 = Nothing
Set myRng2 = Nothing
End Sub
No.3
- 回答日時:
イベント来場者リストがA2セルからA100セルの範囲内に入力されているなら、以下の式でOBリストに含まれているイベント来場者を抽出することができます。
=INDEX(A:A,SMALL(INDEX(ISNA(MATCH($A$2:$A$100,OBリスト範囲,0))*1000+ROW($A$2:$A$100),),ROW(A1)))&""
同様にOBリストに含まれていない人は上記の数式の「ISNA」の部分を「ISNUMBER」に置換した数式になります
No.2
- 回答日時:
ご質問の「表題」は、合致する品目についてとご記入されていますが、ご質問の説明には品目に関する記述が見当たりません・・・
仮に、品目での一致チェック方法であれば、重複した品の「名称」を考慮する必要が少ないと考えられるため、質問に詳細を記入してさえいれば、スマートな方法の紹介が出来そうだとも思えます。
実際のご質問の文章は「品目」とは無関係な「名前」の一致について記述されています。
名前の場合、姓名なのか? 姓だけなのか? 姓名の間にスペースがあるのか?
など、「比較するデータそれぞれ」が正規化されているのかどうかによって、ご希望の「スマートな比較」手段に違いが出ることをご存知ないご様子です。
「山田太郎」と「山田 太郎」は、そのままの比較では「同じ」と認識できません。
正規化を行い、同じ条件で項目を比較できるように編集することが求められます。
また、特にOBリストであれば「同姓同名」が存在することも考慮すべき点です。
比較する片割れの状態についての説明が見当たりません。
OBリスト内の重複の扱いについて、どこにも記述が見当たりません。
表題にある品目の比較ではなく、名前(=曖昧)の比較手段についてのご質問ですが、比較すべきA・Bのリストの「状態説明」が欠如しているように感じます。
「スッキリ」とか「「スマート」などの注文をするわりに、必須な「前提条件・状態」のご説明も無く、しかも表題と異なるご質問内容です。
ご質問をきちんと整理することをお勧めしたいと考えます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 出勤簿の土、日、休日に色付けできない 2 2022/08/04 20:10
- Visual Basic(VBA) 【至急】 当方初心者です。 マクロについて知恵をお貸しください。 ★したい動作 ①リストE列2行目か 4 2022/09/29 18:56
- Excel(エクセル) エクセルについて教えてください。 2 2023/06/14 11:11
- Excel(エクセル) エクセルでキーリストからデータを取り出して1枚1枚印刷するには? 11 2022/06/27 09:52
- Visual Basic(VBA) ユーザーフォームの表示を追加したい 2 2023/03/26 23:18
- Excel(エクセル) excelにおける転記マクロの書き方 2 2023/05/12 03:16
- Excel(エクセル) エクセルの条件付き書式で*を使いたい 4 2022/05/13 16:49
- Access(アクセス) access フォーム 大分類、小分類 1 2022/08/11 18:03
- その他(データベース) Microsoft Accessについて 1 2022/06/06 16:20
- Excel(エクセル) エクセルの数式で教えてください。 1 2023/06/15 14:11
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【スプレドシート】IMPORTRANGE...
-
英数字のみ全角から半角に変換
-
会社PCのメールが更新されない
-
マイクロソフト 一時使用コード...
-
Outlook で宛先が複数の場合の人数
-
【スプレッドシート】指定の日...
-
Microsoft Formsの「個人情報や...
-
Microsoft Edgeの「ニュースと...
-
VLOOKUP関数について
-
【Excel VBA】PDFを作成して,...
-
エクセルでXLOOKUP関数...
-
outlookのメールが固まってしま...
-
teams設定教えて下さい。 ①ビデ...
-
Microsoft365で写真をアルバム...
-
Microsoft Officeに似たキング...
-
会社におけるOfficeライセンス...
-
【スプレッドシート】白色のセ...
-
Excel VBA 日程表からスケジュ...
-
VBAファイルの保存先について
-
エクセル、ワード、ネット検索...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【スプレドシート】IMPORTRANGE...
-
マイクロソフト 一時使用コード...
-
英数字のみ全角から半角に変換
-
Office2021を別のPCにインスト...
-
Microsoft Formsの「個人情報や...
-
officeビジネス型のワードやエ...
-
会社PCのメールが更新されない
-
【スプレッドシート】指定の日...
-
Microsoft Officeを2台目のPCに...
-
何このステータスバー
-
2つのシートの一致する行のセ...
-
会社のTeamsのことで相談です。...
-
エクセルにリンクされるのをし...
-
Windows 11で、IME言語バー(IM...
-
office2010とoffice365の共存で...
-
Microsoftのパソコンです。 エ...
-
エクセルでXLOOKUP関数...
-
Excel関数について質問ですm(__)m
-
VBA
-
自分の専門分野の仕事。初見で...
おすすめ情報