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

koppelen bestanden

Status
Niet open voor verdere reacties.

wilbert01

Nieuwe gebruiker
Lid geworden
19 jul 2010
Berichten
3
Hai hai,

Zit met een groot Excel probleem nl;
Ik exporteer een Excel bestand met bijvoorbeeld 1000 artikelen en 36 kolommen. Een van de kolommen is de voorraad en die is in iedere cel gevuld.
Ik moet uit een ander bestand die uit 2 kolommen bestaat (ean code en voorraad) de voorraad plaatsen in het geëxporteerde bestand. Als ik dit doe met verticaal zoeken dan overschrijf ik ook alle andere 950 voorraad posities met #NB.

Welke formule/functie of combinaties moet ik gebruiken om ervoor te zorgen dat de voorraad van de 50 artikelen wordt gecorrigeerd en de andere waardes in de voorraad kolom niet worden gewijzigd??????

Ben voor het eerst op helpmij en ben benieuwd of iemand mij kan helpen!!

Alvast bedankt,
 
Je zult of een hulpkolom moeten gebruiken waarin je de vertikaal zoeken functie plaatst of je gebruikt VBA.
Bijgevoegd een voorbeeld met VBA.
Hierbij worden de voorraadwaarden in blad 2 vervangen door de voorraadwaarden uit blad 1 mits de EAN-codes in beide bladen overeen komen. Dit helpt je wellicht op weg.

onderstaand de code:
Code:
Sub vervangen()
For Each r In Worksheets(1).Range("a1:a25")

With Worksheets(2).Range("a1:a500")
    Set c = .Find(r, LookIn:=xlValues)
    If Not c Is Nothing Then
        firstAddress = c.Address
        Do
            c.Offset(0, 1).Value = r.Offset(0, 1).Value
            Set c = .FindNext(r)
        Loop While Not c Is Nothing And c.Address <> firstAddress
    End If
End With
Next r
End Sub

Groeten,

M.
 

Bijlagen

Enkele vraagjes.
In welke kolom in je hoofdbestand bevinden zich de EAN-codes en in welke kolom de voorraden ?
Importeer je de update-gegevens eerst in je hoofdbestand of wil je ze rechtstreeks aanpassen vanuit je update-bestand ?
Open je het update-bestand handmatig of moet dit eesrt gecontroleerd worden en dan eventueel automatisch geopend ?
Bevindt het update-bestand zich in dezelfde directory als je hoofdbestand of moet dit gezocht worden, of heeft het een vaste plaats ?
 
M,

Bedankt zover ik ga hier verder mee.

Warme Bakkertje,
Antwoord op jouw vragen:
De Ean staat in beide files in de meest linke kolom
Aanpassen vanuit het update bestand.
Update bestand wordt handmatig geopend.
Ze staan komen beide in dezelfde directory.

Kijk er naar uit of jij ook een ander soortige oplossing heb.


Meld me weer als het gelukt is of niet?
 
Code:
Sub tst()
Set sf = Workbooks("[COLOR="red"]Update.xls[/COLOR]").Sheets("[COLOR="red"]Blad1[/COLOR]")
For Each cl In sf.Range("A2:A" & sf.Cells(Rows.Count, 1).End(xlUp).Row)
    Sheets("[COLOR="red"]Sheet1[/COLOR]").Columns(1).Find(cl, , xlValues, xlWhole).Offset(, [COLOR="red"]1[/COLOR]) = cl.Offset(,[COLOR="red"] 1[/COLOR]).Value
Next
End Sub
De macro plaats je in een standaardmodule in je hoofdbestand.
Het enige dat je nog moet aanpassen zijn de rode waarden in de werkelijke waarden.
 
Rudi,

Ik heb jou per ongeluk de verkeerde info gegeven.

Het bestand waar de wijzigingen in terecht moeten komen staat het EAN in kolom 2.
Het bestand waar de wijzigingen vanaf komen staat het EAN in kolom 1

Moet dan de macro worden aangepast?

Wilbert
 
Wijzig Columns(1) in Columns(2). Je zal dan natuurlijk ook de Offset dienovereenkomstig moeten aanpassen
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan