Vlookup functie

Status
Niet open voor verdere reacties.

St3Vi3

Nieuwe gebruiker
Lid geworden
14 jun 2022
Berichten
4
Beste forumleden

Als NEWBIE in VBA ben ik op zoek naar een code voor volgend project,

ik heb 2 excel bestanden

map1.xlsx
map2.xlsm (waarin 2 sheets: blad1 en blad2)

Nu had ik graag in map1 via vba een zoekfunctie gestart die zich door 2 cellen laat bepalen

in map1.xlsx staat in cel F2 "blad1" of "blad2" (deze worden dmv een userform bij het openen bepaald en bevat stuknummerlijsten)

in cel G4 staat een stuknummer die ik handmatig wil invoeren om op te zoeken (vb: BA237898) ( deze stuknummers staan in de eerste kolom van de lijsten in map2.xlsm)
in cel G2 wordt de opgezochte waarde uit colom 3 terug geplaatst ( tekst).


beetje tekst ter verduidelijking

als cel F2 = blad1 moet het stuknummer opgezocht worden in map2.xlsm sheet blad1
als cel F2 = blad2 moet het stuknummer opgezocht worden in map2.xlsm sheet blad2

moeten beide bestanden open staan om deze functie te laten werken? of is er een mogelijkheid dit automatisch te laten gebeuren ?

dank bij voorbaat.
 
Als je dat in VBA doet kan dat zo worden gemaakt dat het automatisch gaat.
Plaats een voorbeeldje van die documenten hier.
 
Laatst bewerkt:
Het kan zonder VBA, zie bijgaande bestanden.
Open beide bestanden en wijzig F2 in werkmap Map1 van Blad1 in Blad2 of omgekeerd.
Zie in Map2 de werkbladen Blad1 en Blad2 waar ik wat data heb geplaatst.
De gebruikte formule is
=VERT.ZOEKEN(G4;INDIRECT("'[Map2.xlsx]"&F2&"'!A:C");3;ONWAAR)

Je zou er voor kunnen zorgen dat Map2 automatisch wordt geopend via de Workbook_Open() event zodra Map1 wordt geopend.

Controle op niet bestaande stuknummers zit er nog niet in.
 

Bijlagen

Het kan zonder VBA, zie bijgaande bestanden.
Open beide bestanden en wijzig F2 in werkmap Map1 van Blad1 in Blad2 of omgekeerd.
Zie in Map2 de werkbladen Blad1 en Blad2 waar ik wat data heb geplaatst.
De gebruikte formule is
=VERT.ZOEKEN(G4;INDIRECT("'[Map2.xlsx]"&F2&"'!A:C");3;ONWAAR)

Je zou er voor kunnen zorgen dat Map2 automatisch wordt geopend via de Workbook_Open() event zodra Map1 wordt geopend.

Controle op niet bestaande stuknummers zit er nog niet in.

Dank Ahulpje

op deze manier lukt het inderdaad ook :) waarvoor dank.

*workbook_open () wordt ddan in vba geprogrammeerd ?
 
Laatst bewerkt:
Als je dat in VBA doet kan dat zo worden gemaakt dat het automatisch gaat.
Plaats een voorbeeldje van die documenten hier.
Bekijk bijlage Map1.xlsx


Dank Edmoor voor de snelle reactie, in bijlage de 2 mapjes.

en korte uitleg hoe deze zou moeten werken (graag had ik deze in vba geprogrammeerd).

In Map1 wil ik zelf 2 dingen kunnen invullen waarna derest automatisch gebeurt door vlookup.

1) In cel D2 wil ik de keuze tussen "EMA" of "TM" (deze 2 namen slaan weer op de desbetreffende sheet waarin gezocht moet worden in Map2.)

2) daarna wil ik in cel "F2" een willekeurig stuknummer die in de tabel (van map2 ) voorkomt ingeven bijvoorbeeld " BA237898"
3) in cel F1 moet de waarde van kolom 3 komen (uit de tabel)
4) in cel G1 moet de waarde komen uit kolom 4, als deze kolom leeg is moet G1 ook leeg blijven.

bijkomende vraag, moet map2 geopend zijn zodat map1 ten goei werkt ? (zoja kan je dit automatisch laten gebeuren? en automatisch laten sluiten?

Ik hoop dat deze beknopte uitleg duidelijk is voor u :)


dank bij voorbaat.



Bekijk bijlage Map1.xlsxBekijk bijlage Map2.xlsx
 
Laatst bewerkt:
Wat de meesten niet weten is, dat je een aantal werkboeken ook als groep kunt opslaan.
Het wordt dan een 'workspace' met de extensie '.xlw'.
Jouw beide bestanden heb ik als workspace opgeslagen en samen met de bestanden als zip-bijlage toegevoegd.
1. pak het zipbestand uit
2. open het xlw-bestand
3. kijk wat er in Excel gebeurt
 

Bijlagen

Laatst bewerkt:
Bijgaand Map1.xlsm en Map2.xlsx.
Open Map1 en volg de instructies. De locatie van het databestand (Map2) wordt bewaard in het werkblad Instellingen.
 

Bijlagen

Bijgaand Map1.xlsm en Map2.xlsx.
Open Map1 en volg de instructies. De locatie van het databestand (Map2) wordt bewaard in het werkblad Instellingen.


Als je de vert.zoek functie gebruikt in de cel zelf ipv vba is het dan mogelijk om wanneer er geen resultaat is van het zoeken hij de cel leeg laat staan ipv de foutmelding #N/B geeft.
 
Probeer zelf eens iets met

=ALS(ISNB(...);"Item niet gevonden";...)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan