|
▼マッチ さん:
こんばんは。
>はじめまして。どうにも出来ずに悩んでいます。
マッチングというのは、色々な方法が考えられますから、
楽しみながらやりましょう!!
>お願いします。下記、Aセルに社員番号、Bセルに
>シーケンス番号があります。AセルとBセルを
>マッチさせ、Aセルのみの社員番号※1とBセルのみ
>シーケンス番号のみ※2出したいのですが。
>
> A B
>1 1001 1002
>2 1002 1003
>3 1003 1004
>4 1004 1005
>5 1006 1006
>6 1007 1008
>
>--------------------
>
> ※1 ※2
> 1001 1008
1007 1005 ←これもそうですよね?
アクティブシートのA列、B列の一行目からデータがあるとします。
結果はD列、E列に表示します。
'==========================================================
Sub main()
Dim idx as long
Dim 列(1 To 2) As Range
Dim crng As Range
Dim unmatch As Range
Set 列(1) = Range("a1", Cells(Rows.Count, 1).End(xlUp))
Set 列(2) = Range("b1", Cells(Rows.Count, 2).End(xlUp))
For idx = 1 To 2
Set unmatch = Nothing
For Each crng In 列(idx)
If IsError(Application.Match(crng, 列(IIf(idx = 1, 2, 1)), 0)) Then
If unmatch Is Nothing Then
Set unmatch = crng
Else
Set unmatch = Union(unmatch, crng)
End If
End If
Next
If Not unmatch Is Nothing Then
unmatch.Copy Cells(1, idx + 3)
End If
Next
End Sub
試してみてください。
|
|