あなたが助けてくれることを願っています!VBA - 固有の値を別のシートにコピーする
2つのワークシート1 &があります。2. Sheet1にはすでに既存のデータがあり、Sheet2は生データをダンプするために使用されます。これは毎日更新され、データダンプには前日のデータと新しいデータの両方が含まれます。新しいデータには、前の日だけでなく、その月の早い時期に発生した可能性のある対話に関連する行も含まれます。したがって、データは「日付順次」ではありません。
データの9列は列内の一意の識別子でありますが、I.
何が起こることを必要としていたマクロを実行するとき、それは私のSheet1とSheet2の、そして唯一のコピーと、中列に見えますですシート2の一意の識別子が既にSheet1に存在しない行をペーストします。 Sheet1の最後の空行からそれらを貼り付けます。
私が現在持っていることはこれである - それは私がオンラインで見つけることができるすべてです:
Sub CopyData()
Application.ScreenUpdating = False
Dim LastRow As Long
LastRow = Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
Dim rng As Range
Dim foundVal As Range
For Each rng In Sheets("Sheet2").Range("A1:I" & LastRow)
Set foundVal = Sheets("Sheet1").Range("I:I").Find(rng, LookIn:=xlValues, LookAt:=xlWhole)
If foundVal Is Nothing Then
rng.EntireRow.Copy Sheets("Sheet1").Cells(Rows.Count, "A").End(xlUp).Offset(1, 0)
End If
Next rng
Application.ScreenUpdating = True
End Sub
しかし、それだけで働いていない - 列の値は、私はすでに存在している場合だけでなく、それが認識しない、それはコピー&ペーストですSheet2の最初の2行のみが、それぞれ8回複製されます。
事前に申し訳ありませんが、私は実際のVBA初心者であり、すべてがうまくいかないところではうまくいきません。私は助けていただければ幸いです!