私は2枚のシートSht1とSht2を持っています。ソースシートとデスティネーションシートを比較し、ソースシートの不一致データをコピーする
私はsheet1の列Aとsheet2の列Aを比較しています。両方のシートの列AにIDが含まれています。
sheet2に一致しないIDがある場合は、シート1の一致しない行をコピーします。
私は以下のコードを試してみましたが、問題は、シート2の不一致の最後の行を複数回コピーしていて、Exitなしで実行し続けていることです。
誰でも私がどのように修正できるか教えてください。
Sub trialtest()
Dim srcLastRow As Long, destLastRow As Long
Dim srcWS As Worksheet, destWS As Worksheet
Dim i As Long, j As Long
Application.ScreenUpdating = False
Set srcWS = ThisWorkbook.Sheets("S2")
Set destWS = ThisWorkbook.Sheets("S1")
srcLastRow = srcWS.Cells(srcWS.Rows.Count, "A").End(xlUp).Row
destLastRow = destWS.Cells(destWS.Rows.Count, "A").End(xlUp).Row
For i = 5 To destLastRow
For j = 5 To srcLastRow
If destWS.Cells(i, "A").Value <> srcWS.Cells(j, "A").Value Then
destWS.Cells(i, "A") = srcWS.Cells(j, "A")
destWS.Cells(i, "B") = srcWS.Cells(j, "B")
destWS.Cells(i, "C") = srcWS.Cells(j, "C")
destWS.Cells(i, "D") = srcWS.Cells(j, "D")
destWS.Cells(i, "E") = srcWS.Cells(j, "E")
destWS.Cells(i, "F") = srcWS.Cells(j, "F")
destWS.Cells(i, "G") = srcWS.Cells(j, "G")
destWS.Cells(i, "H") = srcWS.Cells(j, "H")
destWS.Cells(i, "I") = srcWS.Cells(j, "I")
destWS.Cells(i, "J") = srcWS.Cells(j, "J")
destWS.Cells(i, "K") = srcWS.Cells(j, "K")
destWS.Cells(i, "L") = srcWS.Cells(j, "L")
destWS.Cells(i, "M") = srcWS.Cells(j, "M")
destWS.Cells(i, "N") = srcWS.Cells(j, "N")
destWS.Cells(i, "O") = srcWS.Cells(j, "O")
destWS.Cells(i, "P") = srcWS.Cells(j, "P")
destWS.Cells(i, "Q") = srcWS.Cells(j, "Q")
destWS.Cells(i, "R") = srcWS.Cells(j, "R")
destWS.Cells(i, "S") = srcWS.Cells(j, "S")
End If
Next j
Next i
Application.ScreenUpdating = True
End Sub
何を助けて幸せをSheet2のシート1の行をカウントし、必要はありませんあなたは "完全な不一致の行"を望んでいるのですか? – user1
@ user1申し訳ありません、それはタイプミスです。 ITは、 – Jenny
を比較し、不一致の行をどのように比較したいですか?なぜあなたは比較したいですか? – user1