Hier is de aangepaste code. Ik bedenk me nu dat ik nogal verward moet geweest zijn toen ik de vorige code schreef.
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim i As Integer, j As Integer, vervangen As Boolean
vervangen = False
For i = 3 To Worksheets("begin").Range("A65536").End(xlUp).Row
If Left(Worksheets("begin").Cells(i, 3), 2) = "ok" Then
For j = 3 To Worksheets("input").Range("A65536").End(xlUp).Row
If Worksheets("begin").Cells(i, 1).Value = Worksheets("input").Cells(j, 1).Value Then
Worksheets("input").Cells(j, 6).Value = Worksheets("begin").Range("A1").Value
Worksheets("input").Cells(j, 2).Value = Worksheets("begin").Cells(i, 2).Value
vervangen = True
Else
End If
Next j
If vervangen = False Then
Worksheets("input").Cells(Worksheets("input").Range("A65536").End(xlUp).Row + 1, 1).Value = _
Worksheets("begin").Cells(i, 1).Value
Worksheets("input").Cells(Worksheets("input").Range("A65536").End(xlUp).Row + 1, 6).Value = _
Worksheets("begin").Range("A1").Value
Else
End If
Else
End If
Next i
Worksheets("begin").Activate
Worksheets("begin").Range("A1").Activate
End Sub
De verwarring is eigenlijk nog niet helemaal opgelost; Wil je ook dat de rijen in C, met OK in de kolom C, gedeleted worden nadat ze overgezet zijn? Want dat gebeurt nu niet met deze code. Maar ze werkt wel (heb ze beperkt getest).
WG