Excel ファイル内に 3 つのワークシートがあります。欠落 (25,000 行)、有効 (18,000 行)、一致 (空白)。
Missing と Valid の列 D の値を比較し、すべての一致のすべての行を Matched シートにコピーする必要があります。
これを使ってワイルドカード検索を行うことができれば、それもいいでしょう。たとえば、ABBOTT LABORATORIES を ABBOTT LAB に一致させる方法などです。それが不可能な場合は、一致した行を強調表示してワイルドカードの一致を手動で見つける方法があれば、非常にありがたいです。
これは私が試したもので、Google経由で見つけましたが、コードを完全には理解していません. エラーなしで数分間実行されましたが、データは取得されませんでした:
Sub CopyRows()
Dim cell As Range
Dim found As Range
Dim dcol
Dim bcol
Dim totalrows1 As Long
Dim totalrows2 As Long
totalrows1 = Sheets("Valid").UsedRange.Rows.Count
bcol = "$D$2:$D$" & totalrows1
totalrows2 = Sheets("Missing").UsedRange.Rows.Count
dcol = "$D$2:$D$" & totalrows2
For Each cell In Sheets("Valid").Range(bcol)
If Not Sheets("Missing").Range(dcol).Find(What:=cell.Value, LookAt:=xlWhole) Is Nothing Then
Set found = Sheets("Missing").Range(dcol).Find(What:=cell.Value, LookAt:=xlWhole)
If found.Offset(0, -3).Value = cell.Offset(0, 1).Value And found.Offset(0, -2).Value = cell.Offset(0, -1).Value Then
cell.Offset(0, 2).Value = found.Offset(0, -1).Value
End If
End If
Next cell
End Sub