4列のデータがあります。これらは、名/姓の列をコピーして貼り付けた 2 つの別々の列です。
私がやりたいのは、姓で一致を実行し、それらが等しい場合は、名で一致を実行することです。
列の範囲は動的であるため、CONCATENATE と VLOOKUP の数式を実行すると機能しますが、あまり関与しないものを取得できれば、それは素晴らしいことです。
A B C D E
1 Last First Last2 First2
2 Sharma Abhi Smith Kevin
3 Philip Matt Smith GEORGIA
4 Franc Pete John Bon Jovi
5 Arnold Susan Jack White
6 Mallo Chad Sharma Katie
7 Daigle Steve Sharma Abhi
私の考えでは、セル E2 から開始して、一致を返すか、一致しないかを指定する必要があります (この場合、Row 2 のみが一致を返す必要があります。現在、毎回一致を返していますが、これは間違いなく正しくありません。
これは私がこれまでに書いたコードです
Sub matchFunction()
On Error Resume Next
Dim BW_Row As Long
Dim BW_Clm As Long
Table1 = Sheet2.Range("F11:F16") ' Range of all appointments last name
Table2 = Sheet2.Range("$G$11:$G$16") ' Range of all appointments first name
Table3 = Sheet2.Range("$H$11:$H$16") ' Range of leads
BW_Row = Sheet2.Range("J11").Row ' Change E column if it's a match
BW_Clm = Sheet2.Range("J11").Column
For Each c In Table1
For Each d In Table2
If Application.Match(c, Table3, 0) <> "" Then
If Application.Match(d, Table3, 0) <> "" Then
Sheet2.Cells(BW_Row, BW_Clm) = "It's a Match!"
Else
Sheet2.Cells(BW_Row, BW_Clm) = "Sorry, it's not a match"
End If
End If
BW_Row = BW_Row + 1
Next d
Next c
MsgBox "Matching Finished"
End Sub