• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Kolommen vergelijken + de rijen kopieren/plakken

Status
Niet open voor verdere reacties.

Appie18

Nieuwe gebruiker
Lid geworden
28 aug 2008
Berichten
2
Ik heb de volgende vraag.

Ik heb in 2 tabbladen 2 kolommen met artikelcodes met daarbij nog extra informatie in de andere kolommen.

Ik wil graag de artikelcodes van tabblad 1 en 2 met elkaar vergelijken omdat hier dubbele artikelcodes in staan.

Als er een dubbele artikelcode voorkomt zou ik willen dat alle informatie die in tabblad 2 achter de artikelcode staat (dus de hele rij) wordt gekopieerd en geplakt naar tabblad 1 en dan wel precies op de plek waar de dubbele artikelcode staat.
Zodat alle informatie over het desbetreffende artikel op 1 rij achter de artikelcode komt te staan.

Het gaat om een lijst van 2500 codes vandaar dat het gemakkelijk zou zijn om hier een aparte functie/macro voor te hebben, alleen ben ik er zelf nog niet uitgekomen.
Wie kan mij helpen?
 
Met vertikaal zoeken zou dat wel moeten lukken. Ongeveer zo:

Code:
=vert.zoeken(A1;Blad2!$A$1:$B$100;2;ONWAAR)

Waarbij:

A1 de cel is waar het artikelnummer in staat wat je wilt opzoeken op het andere blad

Blad2!$A$1:$B$100 het bereik is waarin je wilt zoeken op het andere blad (in kolom A de artikelnrs, in kolom B de 'overige' data die je wilt ophalen

2 het kolomnummer is waar de overige data uit opgehaald moeten worden. Kolom B in het bereik dus

ONWAAR aangeeft dat het artikelnummer precies overeen moet komen.

De formule is nog wel uit te breiden met het een en ander, om bijvoorbeeld errors als #N/A te voorkomen.
 
Deze macro:
Code:
Sub tst()
  On Error Resume Next
  For Each cl In Sheets("Blad1").Columns(1).SpecialCells(xlCellTypeConstants)
    c0 = Sheets("Blad2").Columns(1).Find(cl).Address
    If Err.Number = 0 Then Sheets("Blad2").Range(c0).EntireRow.Copy cl.EntireRow
    Err.Clear
  Next
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan