Hallo,
Ik heb een excel document dat gegenereerd wordt uit een ander programma.
Na het genereren gaan diverse mensen aan het werk met het document en vullen data aan in de bestaande rijen.
Als er in het hoofdprogramma wijzigingen komen wordt het excel document opnieuw gegenereerd, uiteraard zitten hier de wijzigingen welke de diverse mensen toegevoegd hebben er dan niet meer bij.
De waarde welke wijzigt (een reeks cijfers) staat altijd in kolom b.
De toevoeging welke men in het document zet altijd in kolom a.
Nu zoek ik een macro code om vanuit het nieuwe bestand een controle te doen:
Kijk in de 1ste cel van kolom B (nieuw document, zoek deze waarde in kolom B (oude document). Als de waarde overeenkomt kopieer data van kolom A uit die rij naar het nieuwe document, ook kolom A. Bestaat de waarde niet in het oude document dan wijzigt er niets.
Daarna rij 2, 3,4 enz.
Omdat me dit nogal lastig leek ben ik klein begonnen (2 tabbladen ipv 2 documenten).
Na wat proberen kom ik op:
Dit werkt echter niet als er een waarde is die niet in beide documenten zit, en ik geloof niet dat dit de meest efficiënte code is.
Iemand die me wat verder kan helpen?
Alle hulp wordt gewaardeerd!
Ik heb een excel document dat gegenereerd wordt uit een ander programma.
Na het genereren gaan diverse mensen aan het werk met het document en vullen data aan in de bestaande rijen.
Als er in het hoofdprogramma wijzigingen komen wordt het excel document opnieuw gegenereerd, uiteraard zitten hier de wijzigingen welke de diverse mensen toegevoegd hebben er dan niet meer bij.
De waarde welke wijzigt (een reeks cijfers) staat altijd in kolom b.
De toevoeging welke men in het document zet altijd in kolom a.
Nu zoek ik een macro code om vanuit het nieuwe bestand een controle te doen:
Kijk in de 1ste cel van kolom B (nieuw document, zoek deze waarde in kolom B (oude document). Als de waarde overeenkomt kopieer data van kolom A uit die rij naar het nieuwe document, ook kolom A. Bestaat de waarde niet in het oude document dan wijzigt er niets.
Daarna rij 2, 3,4 enz.
Omdat me dit nogal lastig leek ben ik klein begonnen (2 tabbladen ipv 2 documenten).
Na wat proberen kom ik op:
Code:
Public Sub IMPORT()
i = 1
For i = 1 To 10
If Cells.Find(What:=Sheets(2).Cells(i, 2), After:=Range("B1"), LookIn:=xlFormulas, lookat:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False) = True Then
BRON = Cells.Find(What:=Sheets(2).Cells(i, 2), After:=Range("B1"), LookIn:=xlFormulas, lookat:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False)
If Cells.Find(What:=Sheets(2).Cells(i, 2), After:=Range("B1"), LookIn:=xlFormulas, lookat:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False).Value <> "" Then
Sheets(1).Activate
RijNR = (Cells.Find(What:=Sheets(2).Cells(i, 2), After:=Range("B1"), LookIn:=xlFormulas, lookat:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False).Row)
Sheets(2).Cells(i, 1) = Sheets(1).Cells(RijNR, 1)
Else
End If
Else
End If
Next
End Sub
Dit werkt echter niet als er een waarde is die niet in beide documenten zit, en ik geloof niet dat dit de meest efficiënte code is.
Iemand die me wat verder kan helpen?
Alle hulp wordt gewaardeerd!