• 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.

2 excel doc's vergelijken en gegevens vervangen

Status
Niet open voor verdere reacties.

yvonne0

Gebruiker
Lid geworden
2 feb 2010
Berichten
191
Ik heb 2 excel bestanden met daarin codes en prijzen van artikelen.

Als de code in bestand 1 ook voorkomt in bestand 2,
dan moet de prijs van bestand 2 veranderd worden in de prijs van bestand 1.


Weet iemand hoe ik dit kan doen, ik heb zelf geen idee :confused:

Alvast bedankt.

Groetjes,
Yvonne
 
met vertikaal zoeken in een tabel.

beter is om een voorbeeldbestandje te plaatsen, ontdaan van gevoelige info.

met vriendelijke groeten,

Oeldere
 
2 voorbeeldbestandjes...

Onderstaande data (krijg het niet bijgevoegd in een excel bestand) moet vergeleken worden met het bestandje dat wel bijgevoegd is...

Omschrijving Inh Eancode/Refnr. Verkpr
41 product A 10 10 38713200298 52
39 product A 10 10 38713200311 91,55
38 product B 10 10 328713200250 26,5
39 Product C 10 1038713200090 260
39 Product D 10 1038713200106 116,5

Dank alvast!
 

Bijlagen

Laatst bewerkt:
Zoiets:
Code:
=VERT.ZOEKEN(A1;[bestandsnaam_werkblad!$E$1:$A$F1000;28;0)

Klik in het ene bestand dat afhankelijk moet worden in een cel, typ = VERT.ZOEKEN(
Klik dan op de cel waarin de code staat waarvan je de prijs wilt ophalen. Tik een ;
Selecteer dan in dat bestand kolom E t/m AF en tik weer een ;
Typ 28;
Typ 0) Enter.

Wat ook kan is intypen =VERT.ZOEKEN( en dan op het =-teken klikken voor de formulebalk. Je ziet dan een dialoogvenster verschinen met daarin vier witte vakjes. Dit zijn de vier argumenten van de functie vertikaal zoeken. Die kun je vullen en dan op OK klikken.

Succes.
Groeten,
Richard
 
Als beide bestanden identiek opgebouwd zijn kan je hier mee verder
Code:
Sub tst()
On Error Resume Next
Set sh = Workbooks("Test2.xls").Sheets("Sheet 1") 'vul hier de tweede bestandsnaam en naam werkblad in
For Each cl In Sheets(1).Range("E1:E" & Cells(Rows.Count, 5).End(xlUp).Row)
    With sh.Columns(5)
        'If Not .Find(cl.Value, , xlValues, xlWhole) Is Nothing Then
            .Find(cl.Value, , xlValues, xlWhole).Offset(, 27).Value = cl.Offset(, 27).Value
        'end if
End With
Next
End Sub
 
hulp

Bedankt voor de tips! Ik ga het proberen!

Groetjes,
Yvonne
 
kom er niet helemaal uit

Op youtube zag ik dit filmpje: http://www.youtube.com/watch?v=SZmYeaRcwOk

Dit is de het geval: ik heb nu 1 document:
Kolom met codes en een kolom met prijzen.

Als de code van tabje 1 (met alle producten) ook voorkomt in tabje 2,
dan moet de prijs van tabje 2 veranderd worden in de prijs van tabje 1
.

Ik vind het echt heel moeilijk en heb wat geprobeerd, maar volgens mij zit ik er helemaal naast :confused:

Ik krijg helaas niet het bestand geupload (kan ik deze mss naar iemand mailen? Het is 150kb). Heb nu deze code: in tabje 2 in een extra kolom gezet:

=VLOOKUP(E:E+'bestand 1'!D:E;2;FALSE)

uitleg:
E:E in bestand 1 (zo heet het tabje 1) = codes
D:E in bestand 2 (zo heet het tabje 2) = D codes, E prijzen

Als iemand de juiste code weet, graaaag :)
 
Laatst bewerkt:
Code:
=VLOOKUP(E:E+'bestand 1'!D:E;2;FALSE)
De syntax van vlookup luid:

VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])
lookup_value Dit is de zoekwaarde (dit kan geen zoekbereik zijn)
table_array Dit is het zoekbereik
col_index_num De kolom waarin de waarde staat die je wilt zien

Als je dit weet kijk dan nu eens naar je formule en zie dat de syntax totaal onjuist is.
 
dank

Dank je Willem, ik zal het dit weekend eens gaan proberen.
Ik ben nu thuis (met drukke kinderen:p), dus ik ga er dit weekend eens een keertje rustig voor zitten :o

Hopelijk kom ik er met die code wel uit :thumb:
 
nope

Ik kom er écht niet uit :( Ik ben hier zó slecht in :shocked:

Kan iemand mij de code misschien exact gegeven?

Als voorbeeld:
twee worksheets in een document, in beide worksheets

kolom A: artikelnummers
Kolom B: prijzen

Als een artikelnummer van worksheet 1 ook in worksheet 2 voorkomt,
dan moet in worksheet 2 de prijs van worksheet 1 overgenomen worden....

Ik hoop dat iemand het verlossende antwoord voor mij heeft.... :o
 
beste yvonne0, gelieve volgende maal even na te denken over het formuleren van uw vraag alvorens ze hier te plaatsen
In Post#1
Als de code in bestand 1 ook voorkomt in bestand 2,
dan moet de prijs van bestand 2 veranderd worden in de prijs van bestand 1.
In Post#11
twee worksheets in een document, in beide worksheets
Niet verwonderlijk dat de code niet geschikt was voor jouw uiteindelijke doel
Code:
Sub tst()
On Error Resume Next
For Each cl In Sheets(1).Range("A1:A" & Cells(Rows.Count, 1).End(xlUp).Row)
    With Sheets(2).Columns(1)
        .Find(cl.Value, , xlValues, xlWhole).Offset(, 1).Value = cl.Offset(, 1).Value
    End With
Next
End Sub
 
dank :-)

Hallo plagvreugd,

Hartelijk super bedankt voor je excel voorbeeldje!

Daar ga ik even mee aan de slag om het toe te passen in het document waar ik het in moet doen!!!!

Misschien doe ik dat dit weekend thuis, anders dinsdag op mijn werk.

Knap hoor :D :D :thumb:
 
oh

Hoi Warmbakkertje,

Ik heb de vraag later inderdaad anders geformuleerd. Omdat ik het moeilijk vond uit te leggen heb ik later een 'simpele variant' als vraagstelling bedacht (of in ieder geval mijn best voor gedaan :o)

Dus 1 document in plaats van 2 documenten. En ook wat minder kolommen.

Groetjes,
Yvon
 
Heb je de code uit Post#13 al geprobeerd ?
 
gelukt!

Dankzij het bestand van plagvreugd is het mij eindelijk gelukt. Het probleem is dus opgelost :thumb:

Heel veel dank!!!!
 
nog 1 uitlegje svp

'' =IF(COUNTIF('bestand 1'!D:D;'bestand 2'!E2)>0;VLOOKUP(E2;'bestand 1'!D:E;2;FALSE);F2)

Ik probeer het ook echt te snappen he ;)
Kan iemand mij uitleggen waar de 0 en de 2 precies voor staan in deze code?

Ik vertaal het als volgt maar weet niet of het klopt:

Bestand 1 (nieuwe prijzen):
kolom D = artikelnummers
Kolom E = prijzen

Bestand 2 (oude gegevens):
Kolom E = artikelnummers
Kolom F = prijzen

als de inhoud met artikelnummers van kolom D van bestand 1 overeenkomt met de inhoud van cel E2 van bestand 2, dan ..... wat betekent 0 ??? zoeken in E2 van bestand 2 naar artikelnummer, .??... en dan als artikelnummers en prijzen van bestand 1 niet overeenkomen, is de uitkomst de nieuwe prijs en anders de oude prijs.

Zo, pfff, hehe, volgens mij klopt er niet veel van mijn verhaal, maar kan iemand het in excel-forumules analfabeten taal uitleggen???? Ik wil zo graag begrijpen wat er nu precies staat...

Groetjes,
Yvonne
 
geen idee

geen idee hoe die smiley in mijn code is gekomen, maar goed...
 
Hallo Yvonne,

Er klopt inderdaad niet zo veel van je verhaal.

Excel heeft ook een prime halp-functie ingebouwd he. Heb je die al ontdekt?

Ook als je bezig bent met een formule kun je tips krijgen over de verschillende argumenten die in een formule moeten staan. Typ bevoorbeeld "=COUNTIF("in een cel en klik daarna op fx bovenaan (links van de formule-bar, het witte vlak waar je de celinhoud ziet) en je komt in een pop-up waar je de verschillende benodigde argumenten ziet, hun tussenresultaat en een beschrijving. Ik stel voor dat je dat doet voor de door jou gebruikte formules.

De countif in jouw geval telt het aantal cellen in kolom D van bestand 1 dat overeenkomt met bestand 2 cel E2. Als dat aantal groter is dan nul (maw ja, het artikelnummer komt voor in bestand 1), dan doen we een lookup naar de prijs van het artikel in bestand 1. De lookup voeren we uit op kolom D en E. We willen de tweede kolom ophalen uit dit lookup-bereik (want daar staat de prijs).
Als de countif geen getal groter dan nul teruggaf (oftewel dit artikel staat niet in bestand 1), dan gebruiken we gewoon de prijs van bestand 2 (=cel F2).
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan