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

Index-Vergelijken

Status
Niet open voor verdere reacties.

Calculsoft

Gebruiker
Lid geworden
16 nov 2018
Berichten
6
Beste Excel-experten,

Voor een rekenblad moet ik best vaak de formule index-vergelijken gebruiken. Dit werkt prima om het snijpunt van verticaal en horizontaal zoeken te gebruiken. Het gaat goed, zolang we met "100% juiste" zoekgegevens werken (dus een perfecte match tussen zoekwaarde en de tabel waarin we zoeken). In dit geval moet ik jammer genoeg een waarde groter nemen, indien het geen 100% match is. Dit kan perfect door criteriumtype-1 te selecteren. Helaas is het zo dat de prijslijst waarin ik moet zoeken van klein naar groot (zowel verticaal als horizontaal) is opgebouwd. Dit zorgt blijkbaar voor de problemen.

Wel, best moeilijk om het zo allemaal uit te schrijven. als bijlage vinden jullie het voorbeeld waarin het hopelijk duidelijker wordt. :D

Alvast bedankt voor jullie hulp!

Kristof
 

Bijlagen

Het matchtype dicteert tevens de sorteervolgorde. Dus bij Match type 1 MOET de opzoekkolom oplopend gesorteerd zijn en bij -1 aflopend. Anders krijg je sowieso #NB. Welke waarde had je verwacht te vinden eigenlijk in cel U7?
 
Het matchtype dicteert tevens de sorteervolgorde. Dus bij Match type 1 MOET de opzoekkolom oplopend gesorteerd zijn en bij -1 aflopend. Anders krijg je sowieso #NB. Welke waarde had je verwacht te vinden eigenlijk in cel U7?

Klopt, zo ver was ik ondertussen geraakt. Helaas vrees ik dus dat ik met index-vergelijken formule er niet uitkom...
Aangezien we de waarde groter moeten nemen, zou dit het resultaat zijn:
hoogte: zoeken op 1480, dus: 1500
breedte= zoeken op 1180 dus: 1200
Resultaat = 158
 
Zo dan?
Code:
=INDEX(D4:L14;VERGELIJKEN(AFRONDEN.BOVEN(O4;50);C4:C14;0);VERGELIJKEN(AFRONDEN.BOVEN(O5;50);D3:L3;0))
 
Zo dan?
Code:
=INDEX(D4:L14;VERGELIJKEN(AFRONDEN.BOVEN(O4;50);C4:C14;0);VERGELIJKEN(AFRONDEN.BOVEN(O5;50);D3:L3;0))

Dat ziet er goed uit! Voor nu ben ik alvast geholpen. Deze oplossing kan helaas enkel werken als we met een vaste waarde van "50" werken. Is er ook een mogelijkheid om dit met een onregelmatige waarde te doen (bv 1800 - 1820 - 1850 - 1870)? Ik heb al wat ideeën ivm matrix formules gezien, maar geraak er zelf helaas niet aan uit.

Kristof
 
Zo misschien?
Code:
=INDEX(D4:L14;VERGELIJKEN(U4;C4:C14;1)+1;VERGELIJKEN(U5;D3:L3;1+1))
 
Ik denk deze, die gaat ook goed als de waarden exact overeenkomen, en werkt voor elk willekeurige reeks (oplopende) tabelwaarden die je maar kan bedenken.
Code:
=INDEX(D4:L14;VERGELIJKEN(O4;C4:C14)+(ZOEKEN(O4;C4:C14)<>O4);VERGELIJKEN(O5;D3:L3)+(ZOEKEN(O5;D3:L3)<>O5))
Zie ook bijlage.
 

Bijlagen

Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan