Toon posts:

Formule voor zoeken in Excel

Pagina: 1
Acties:

Onderwerpen

Vraag


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik zoek een formule voor Excel die grofweg het volgende doet:

ALS de inhoud van cel A1 van werkblad 1
GELIJK IS aan de inhoud van één van de cellen in kolom B van werkblad 2 (bijv. B246 blijkt overeenkomstige inhoud te hebben)
DAN moet het bijbehorende veld getoond worden van werkblad 2 uit kolom C (bijv. C246)

Is dit mogelijk? Heb al van alles geprobeerd met Verticaal Zoeken, ALS-functies en Vergelijken, maar vooralsnog zonder het gewenste resultaat...

Alle reacties


Acties:
  • +2 Henk 'm!

  • Dido
  • Registratie: Maart 2002
  • Laatst online: 01-10 12:06

Dido

heforshe

Dit is exact waar verticaal zoeken voor bedoeld is. Wat heb je al geprobeerd, en wat ging er mis?

Wat betekent mijn avatar?


Acties:
  • +1 Henk 'm!

  • Miss_80
  • Registratie: November 2009
  • Laatst online: 26-08 08:57
Volgens mij is dit zowel met een VLookup als met een Match Index functie op te lossen. Ik doe het even in het engels:

=vlookup(A1,Werkblad2 B:C,2,false).

Dit werkt overigens alleen als de waarde in A1 uniek is. als diezelfde waarde ook in A6 staat bijvoorbeeld krijg je de waarde van C2 ook bij A6

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Wat er mis ging, is dat ik eigenlijk niet de juiste inhoud krijg te zien.
Het gaat hier om een productdatabase waarin ik EAN's probeer te matchen. Zie het als volgt:

Werkblad 1 bevat productgegevens incl. namen
Werkblad 2 bevat EAN's incl namen
Ik probeer de EAN's van werkblad 2 bij de productgegevens van werkblad 1 te krijgen, op basis van de productnaam: als er een match is op productnaam, dan wil ik dat de bijbehorende EAN vanuit werkblad 2 aan werkblad 1 wordt toegevoegd.

ALS de inhoud van cel A1 (productnaam) van werkblad 1
GELIJK IS aan de inhoud van één van de cellen in kolom B van werkblad 2 (bijv. B246 blijkt dezelfde productnaam te bevatten)
DAN moet het bijbehorende veld getoond worden van werkblad 2 uit kolom C (bijv. C246; dit is de EAN)

Ik heb het idee dat ik verticaal zoeken moet combineren met andere functies, maar ik krijg niet de juiste combinatie van functies gevonden. Of is wat ik wil niet mogelijk in Excel?

Acties:
  • +1 Henk 'm!

  • I-King
  • Registratie: Maart 2003
  • Laatst online: 22:58
Hier staat toch precies wat je nodig hebt? https://support.office.co...fe-4963-8ab8-93a18ad188a1

Zoeken op productnaam (bij eerste voorbeeld is dat B3 in kolom B), daarna wordt de achternaam (=EAN) erbij gezocht.

Wat lukt niet, welke output krijg je?

Edit: Let er wel op dat als je gaat slepen met cellen, je de range wel vast moet zetten met $, anders ga je de zoekrange aanpassen.

[ Voor 18% gewijzigd door I-King op 16-08-2019 09:45 ]


Acties:
  • 0 Henk 'm!

  • Hortz
  • Registratie: Januari 2010
  • Laatst online: 23:08
Het is ongeveer wat ik gebruik voor mijn eigen uren registratie op basis van project namen.
Ik typ op blad 1 op A4 een projectnummer in, in B4 staat een formule die A4 controleert met een lijst nummers en namen op blad 2 (Blad 2 kolom A = nummers, kolom B = namen).
Kan hij het nummer vinden op blad 2, dan geeft hij de naam weer op Blad 1 in cel B4. Anders een #N/B.(dit kan je ook omzeilen).

Mijn formule op blad 1 cel B4 is:
=INDEX(blad2!$A$4:$B$50;VERGELIJKEN(A4;blad2!$A$4:$A$50;0);2))

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
I-King schreef op vrijdag 16 augustus 2019 @ 09:44:
Hier staat toch precies wat je nodig hebt? https://support.office.co...fe-4963-8ab8-93a18ad188a1

Zoeken op productnaam (bij eerste voorbeeld is dat B3 in kolom B), daarna wordt de achternaam (=EAN) erbij gezocht.

Wat lukt niet, welke output krijg je?

Edit: Let er wel op dat als je gaat slepen met cellen, je de range wel vast moet zetten met $, anders ga je de zoekrange aanpassen.
Ik probeer 'm nu dus zo te doen:
=VERT.ZOEKEN(A1;Blad2!G2:G5464;Blad2!N:N;ONWAAR)

Ik probeer dus eigenlijk te zeggen: zoek de inhoud van A1 in kolom G van blad 2 en toon dan de inhoud van kolom N van blad 2. Maar die werkt (nog) niet; ik krijg #VERW! als resultaat.

Acties:
  • +1 Henk 'm!

  • I-King
  • Registratie: Maart 2003
  • Laatst online: 22:58
Daar gaat 't mis. Check ook de voorbeelden. Waar je nu linkt naar G, moet je G:N van maken, en dan geef je bij N 't nr een 8 mee als ik goed tel.

Zo denk ik: =VERT.ZOEKEN(A1;Blad2!G2:N5464;8;ONWAAR)

[ Voor 16% gewijzigd door I-King op 16-08-2019 09:55 ]


Acties:
  • +1 Henk 'm!

  • tritimee
  • Registratie: December 2006
  • Laatst online: 06:59
Dat is logisch.

verticaal zoeken bestaat uit 4 onderdelen

Zoekterm (a1)
Bereik / range (G:N)
Welke kolom hij de waarde uit moet teruggeven. (8, van G naar N is geloof ik 8 kolommen naar rechts)
Exact of ongeveer (0 of false voor exact)


Nog een tip! zet je Excel op Engels.Dan kun je bij problemen veel makkelijker Googlen naar oplossingen. Je bent namelijk nooit de eerste die een formule gebruikt of iets wil uitrekenen. Met alleen NL beperk je het aantal oplossingen gigantisch.

[ Voor 33% gewijzigd door tritimee op 16-08-2019 10:00 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
I-King schreef op vrijdag 16 augustus 2019 @ 09:54:
Daar gaat 't mis. Check ook de voorbeelden. Waar je nu linkt naar G, moet je G:N van maken, en dan geef je bij N 't nr een 8 mee als ik goed tel.

Zo denk ik: =VERT.ZOEKEN(A1;Blad2!G2:N5464;8;ONWAAR)
Wow, dank! Het lijkt nu te werken.... Denk ik.
Ik heb nog 1 uitdaging en dan weet ik zeker of 't klopt! Hij maakt van die EAN's iets anders:
van 8710624244xxx maakt hij 871062E+12.
Hoe krijg ik dat nog goed?

Acties:
  • +2 Henk 'm!

  • I-King
  • Registratie: Maart 2003
  • Laatst online: 22:58
Weergeven als tekst ipv nummer. Waar je het ook kan aanpassen naar euro's, percentages etc. Daar zit ook een tekst optie.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
I-King schreef op vrijdag 16 augustus 2019 @ 10:04:
Weergeven als tekst ipv nummer. Waar je het ook kan aanpassen naar euro's, percentages etc. Daar zit ook een tekst optie.
Gelukt! Superveel dank!

Acties:
  • +2 Henk 'm!

  • I-King
  • Registratie: Maart 2003
  • Laatst online: 22:58
Algemeen advies: Even googelen en vooral de voorbeelden snel nabouwen. Dan zie je snel genoeg waar het mis gaat. Er is veel Excel kennis, maar ook snel irritatie op dit forum als mensen de moeite niet doen.
Lukt 't dan niet, deel dan wat je al precies gedaan hebt; dan ben je zoals je ziet, snel geholpen.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
I-King schreef op vrijdag 16 augustus 2019 @ 10:15:
Algemeen advies: Even googelen en vooral de voorbeelden snel nabouwen. Dan zie je snel genoeg waar het mis gaat. Er is veel Excel kennis, maar ook snel irritatie op dit forum als mensen de moeite niet doen.
Lukt 't dan niet, deel dan wat je al precies gedaan hebt; dan ben je zoals je ziet, snel geholpen.
Dank!

Ik denk dat mijn grootste fout was, dat ik dacht dat die '8' ook nog specifiek moest verwijzen naar het tweede werkblad (dat ie anders het eerste werkblad weer zou nemen).

Acties:
  • +1 Henk 'm!

  • Croga
  • Registratie: Oktober 2001
  • Laatst online: 30-09 08:29

Croga

The Unreasonable Man

Onthoud wel dat bij VERT.ZOEKEN de kolom waarin je zoekt alfabetisch gesorteerd moet zijn....

Acties:
  • 0 Henk 'm!

  • serayo
  • Registratie: November 2003
  • Niet online
Croga schreef op vrijdag 16 augustus 2019 @ 10:53:
Onthoud wel dat bij VERT.ZOEKEN de kolom waarin je zoekt alfabetisch gesorteerd moet zijn....
Mag ik vragen wat dit voor invloed heeft? Heb eigenlijk nooit eerder problemen ondervonden als dit niet het geval was. O-)

Acties:
  • 0 Henk 'm!

  • synx6
  • Registratie: Juli 2010
  • Laatst online: 28-09 19:56
serayo schreef op zaterdag 17 augustus 2019 @ 15:44:
[...]


Mag ik vragen wat dit voor invloed heeft? Heb eigenlijk nooit eerder problemen ondervonden als dit niet het geval was. O-)
Als je het niet doet dan is de output niet betrouwbaar. Mijn ervaring ;)

Acties:
  • 0 Henk 'm!

  • Croga
  • Registratie: Oktober 2001
  • Laatst online: 30-09 08:29

Croga

The Unreasonable Man

serayo schreef op zaterdag 17 augustus 2019 @ 15:44:
Mag ik vragen wat dit voor invloed heeft? Heb eigenlijk nooit eerder problemen ondervonden als dit niet het geval was. O-)
synx6 schreef op zaterdag 17 augustus 2019 @ 15:58:
Als je het niet doet dan is de output niet betrouwbaar. Mijn ervaring ;)
^^ dit dus...

Als de kolom niet gesorteerd is gebeuren er onvoorspelbare zaken. De kans is groot dat je resultaten niet kloppen.

Acties:
  • 0 Henk 'm!

  • hood
  • Registratie: Mei 2007
  • Laatst online: 22:30
Croga schreef op zaterdag 17 augustus 2019 @ 16:18:
[...]


[...]


^^ dit dus...

Als de kolom niet gesorteerd is gebeuren er onvoorspelbare zaken. De kans is groot dat je resultaten niet kloppen.
Als je naar de exacte waarde zoekt gaat het niet verkeerd. ;)

Never fall in love with your own design!


Acties:
  • 0 Henk 'm!

  • tritimee
  • Registratie: December 2006
  • Laatst online: 06:59
Croga schreef op zaterdag 17 augustus 2019 @ 16:18:
[...]


[...]


^^ dit dus...

Als de kolom niet gesorteerd is gebeuren er onvoorspelbare zaken. De kans is groot dat je resultaten niet kloppen.
Huh!? dit slaat vziw nergens op.

Vlookup zal altijd van boven naar beneden kijken, waardoor hij de eerste waarde pakt die overeenkomt met de door jou gezochte waarde.

Als je rare waarden terug zou krijgen, dan moet je toch eens kijken naar de 4e variabele van een Vlookup. Waar je dan wellicht 1 of True/Waar hebt staan.

Acties:
  • +2 Henk 'm!

  • Croga
  • Registratie: Oktober 2001
  • Laatst online: 30-09 08:29

Croga

The Unreasonable Man

tritimee schreef op zaterdag 17 augustus 2019 @ 16:25:
Huh!? dit slaat vziw nergens op.

Vlookup zal altijd van boven naar beneden kijken, waardoor hij de eerste waarde pakt die overeenkomt met de door jou gezochte waarde.

Als je rare waarden terug zou krijgen, dan moet je toch eens kijken naar de 4e variabele van een Vlookup. Waar je dan wellicht 1 of True/Waar hebt staan.
https://exceljet.net/excel-functions/excel-vlookup-function

- Als je "approximate match" gebruikt moet de zoek kolom gesorteerd zijn
- Default is "Approximate match"

Als je exact match gebruikt heb je gelijk. Maar dat moet je wel forceren. Forceer je dat niet dan krijg je onvoorspelbare resultaten.

Acties:
  • 0 Henk 'm!

  • serayo
  • Registratie: November 2003
  • Niet online
Croga schreef op zaterdag 17 augustus 2019 @ 16:34:
[...]


https://exceljet.net/excel-functions/excel-vlookup-function

- Als je "approximate match" gebruikt moet de zoek kolom gesorteerd zijn
- Default is "Approximate match"

Als je exact match gebruikt heb je gelijk. Maar dat moet je wel forceren. Forceer je dat niet dan krijg je onvoorspelbare resultaten.
Duidelijk, dank.

Acties:
  • 0 Henk 'm!

  • Hero of Time
  • Registratie: Oktober 2004
  • Laatst online: 21:30

Hero of Time

Moderator LNX

There is only one Legend

Dat is dan wel enorm onhandig als je twee of meer kolommen hebt die bij elkaar horen, maar daardoor niet beide aflabetisch gesoorteerd zijn en in beide kolommen moet zoeken. Met daarbij uiteraard dat je geen gebruik kan maken van exact match omdat je die exacte niet weet.

Commandline FTW | Tweakt met mate


Acties:
  • +1 Henk 'm!

  • Croga
  • Registratie: Oktober 2001
  • Laatst online: 30-09 08:29

Croga

The Unreasonable Man

Hero of Time schreef op zaterdag 17 augustus 2019 @ 17:04:
Dat is dan wel enorm onhandig als je twee of meer kolommen hebt die bij elkaar horen, maar daardoor niet beide aflabetisch gesoorteerd zijn en in beide kolommen moet zoeken. Met daarbij uiteraard dat je geen gebruik kan maken van exact match omdat je die exacte niet weet.
Dat is dan ook niet de use case van TS. Dus als je een andere use case wilt bespreken is dat geen probleem, in een ander topic. In de use case van TS zou het geen probleem mogen zijn om een index op de primary key te zetten...

Acties:
  • 0 Henk 'm!

  • Hero of Time
  • Registratie: Oktober 2004
  • Laatst online: 21:30

Hero of Time

Moderator LNX

There is only one Legend

Croga schreef op zaterdag 17 augustus 2019 @ 18:12:
[...]

Dat is dan ook niet de use case van TS. Dus als je een andere use case wilt bespreken is dat geen probleem, in een ander topic.
Vertel je nou aan de lokale moderator hoe het er hier aan toe gaat?
In de use case van TS zou het geen probleem mogen zijn om een index op de primary key te zetten...
Verwar je nou niet een database met Excel? Want databases hebben primary keys, Excel kent dat niet.

Commandline FTW | Tweakt met mate


Acties:
  • 0 Henk 'm!

  • Croga
  • Registratie: Oktober 2001
  • Laatst online: 30-09 08:29

Croga

The Unreasonable Man

Hero of Time schreef op zaterdag 17 augustus 2019 @ 22:59:
Verwar je nou niet een database met Excel? Want databases hebben primary keys, Excel kent dat niet.
In dit geval is het niet heel veel anders. VERT.ZOEKEN is niet veel anders dan een lookup tegen een database primary key. Er is, met dit soort tabellen, ook nog maar een hele dunne lijn tussen Excel en een database..

In feite ben je met VERT.ZOEKEN een relationele database aan het bouwen met als belangrijkste verschil dat je ook een "ongeveer" relatie kunt leggen, wat in een database vaak wat lastigjes is O-)

[ Voor 18% gewijzigd door Croga op 18-08-2019 08:39 ]


Acties:
  • 0 Henk 'm!

  • Paultje3181
  • Registratie: November 2002
  • Laatst online: 04:07
En de index-vergelijken variant:
Visual Basic:
1
= Index(werkblad2!C:C;vergelijken(werkblad1!A2;werkblad2!B:B;0))
Pagina: 1