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

Kolom updaten vanuit een ander bestand

Status
Niet open voor verdere reacties.

jelle87

Gebruiker
Lid geworden
13 nov 2013
Berichten
278
Hallo allemaal,

Ik heb een bestellijst, waarin ik graag gegevens zou willen importeren (verticaal zoeken oid), vanuit een ander bestand.

Bijvoorbeeld, ik heb MERK A en MERK B:
Bekijk bijlage MERK A.xls

Bekijk bijlage MERK B.xls


In het bestand van merk A, zou ik in kolom H graag de resultaten weergeven die in het bestand MERK B in kolom G staan.

Dit kan natuurlijk met verticaal zoeken gedaan worden, dat is geen probleem. Echter, ik zou graag een knop in willen bouwen, waarmee ik op 'commando' de gegevens ververs. En niet automatisch laten verversen (zodra beide bestanden geopend zijn).

Nu zijn mijn vragen natuurlijk;
- Is dit mogelijk?
- Kan ik dit ook laten verversen, zonder dat ik het bestand MERK B hoef te openen?

Alvast bedankt voor jullie hulp!
 
Als beide bestanden in dezelfde map staan.

Code:
Sub hsv()
Dim Wb As Range
Set Wb = ThisWorkbook.Sheets("bestellijst").Range("H7:H17")
 With GetObject(ThisWorkbook.Path & "\Merk B.xls")
  Wb.Value = .Sheets("Bestellijst").Range(Wb.Offset(, -1).Address).Value
    .Close
  End With
End Sub
 
Dan "Thisworkbook.path" verruilen voor het pad waar "Merk B.xls" wel staat.
 
Hmm, ik heb het geprobeerd, maar ik kom er helaas niet uit :( Zou je dit voor me uit kunnen werken in de 2 bestanden die ik gestuurd als bijlage toegevoegd had?

Alvast bedankt :)
 
De code in een module in bestand "Merk A.xls".
Ik heb het bestand "Merk B.xls" even voor het gemak op mijn bureaublad gezet.

Verander het rode gedeelte naar waar het bestand bij jou staat.
Code:
Sub hsv()
Dim Wb As Range
Set Wb = ThisWorkbook.Sheets("bestellijst").Range("H7:H17")
 With GetObject("[COLOR=#FF0000]C:\Users\hsv\desktop[/COLOR]\Merk B.xls")
  Wb.Value = .Sheets("Bestellijst").Range(Wb.Offset(, -1).Address).Value
    .Close
  End With
End Sub
 
Wauw, dat is super zeg :)

Kan dit ook onder een knop gezet worden, zodat dit 'op commando' bijgewerkt kan worden? en niet automatisch zeg maar?
 
Dit gaat niet automatisch, dus hang de code aan een knop of verwijder "Sub" en "End Sub", en zet het onder een "Private Sub CommandButton1_Click()" gebeurtenis.
 
Ik durf het bijna niet te vragen, maar zou je dit eens uit kunnen werken in een voorbeeldbestandje :)?
 
Ik kan het er zo inzetten, maar daar leer je niets van.
Zoek het activeX-Besturingelement "CommandButton" en zet die op het blad.
Raadpleeg de Help van Excel indien nodig.
De code komt niet in een standaardmodule, maar in het moduleblad van toepassing.

Code:
Private Sub CommandButton1_Click()
Dim Wb As Range
Set Wb = ThisWorkbook.Sheets("bestellijst").Range("H7:H17")
 With GetObject("[COLOR=#ff0000]C:\Users\hsv\desktop[/COLOR]\Merk B.xls")
  Wb.Value = .Sheets("Bestellijst").Range(Wb.Offset(, -1).Address).Value
    .Close
  End With
end sub
Kom je er echt niet uit dan zal ik het er voor je inzetten.
Laat even weten of het is gelukt.
 
Het is gelukt, bedankt voor de uitleg.

Maar...
Hij neemt nu letterlijk de resultaten over, vanuit het andere bestand.

Stel nou voor dat de resultaten op verschillende plaatsen staan in het document? Dan zou het dus via verticaal zoeken moeten gebeuren (of iets in die geest), lijkt me?

Bedankt weer!
 
Je kunt ook de letterlijke resultaten ophalen en dan tijdelijk in jouw Excel plaatsen en een verticaal zoeken formule deze data laten gebruiken.

Johan
 
Hallo Johan,

Dat zou inderdaad ook een oplossing kunnen zijn, bedankt voor het meedenken!

Kan ik het ook zo doen (met behulp van een druk op de knop):
op een extra tabblad de resultaten uit 2 verschillende kolommen (A en G) importeren vanuit het andere bestand (vanuit MERK B, in dit geval)? Of moet ik dan alles overnemen?
 
Je kunt zelf kiezen.
Het grootste probleem van Excel is, dat de data en de presentatie hetzelfde zijn.
Je kunt dus het beste alle data in 1 tabblad plaatsen en dan de rapportage op een ander tabblad.
Dan krijg je een soort Input tabblad (data uit andere Excels) een Verwerking tabblad (waar je er mogelijk nog iets aan toevoegt of formules op loslaat) en een Output tabblad waar de resultaten in komen.

Johan
 
Wat moet ik aanpassen in de formule/code, zodat ik alles op een ander tabblad kan plaatsen dan? Bijvoorbeeld de 'update' knop op tabblad 1, en dan de data uit het andere bestand op tabblad 2 (verborgen).

dank!
 
Dat moet je maar eens gaan proberen. Als we je alles voorkauwen leer je nooit iets. Ga anders ook eens naar de Excel Experience Day van Kluwer in Bunnik deze week. Kun je je vragen stellen aan een expert panel en een hoop leren.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan