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

Hulp gevraagd zoekfunctie

  • Onderwerp starter Onderwerp starter dek8
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

dek8

Gebruiker
Lid geworden
18 mrt 2018
Berichten
55
Beste Forum gebruikers,

Hulp gevraagd! Zie bijgaand excel filetje. Ik heb een tabel waar ik de ingevulde data behorende bij een betreffende datum wil plukken en die wil weergeven in één rij waarin alle data achter elkaar staan.

Ik ben bekend met de vert. en horizont. zoeken functies, heb al gezocht en geprobeerd met index/vergelijk, maar ik krijg het niet voor elkaar. Misschien voor kenners een peulenschil, daarom maak ik graag gebruik van u kennis, waarvoor hartelijk dank!

Gr.
 

Bijlagen

deze in kolom A
Code:
=ALS(A2=0;"";A2)&ALS(A3=0;"";A3)&ALS(A4=0;"";A4)&ALS(A5=0;"";A5)&ALS(A6=0;"";A6)&ALS(A7=0;"";A7)&ALS(A8=0;"";A8)&ALS(A9=0;"";A9)&ALS(A10=0;"";A10)&ALS(A11;"";A11)&ALS(A12=0;"";A12)
 
Bedankt Haije, deze werkt inderdaad en had ik zelf als alternatief ook klaar staan, alleen ben even benieuwd of dit ook kan met index/vergelijk? Ik had nl een vereenvoudigde file aangehecht in mijn eerste bericht, de werkelijke file heeft honderden kolommen. Met deze 'als' functie zou dat dan alsnog een flinke puist werk zijn:-)
Iemand?
Gr.
 
Laatst bewerkt:
Vraag: Staat er in elke kolom (rijen 2-12) steeds maar 1 tekst, zoals in je voorbeeld?

Opm: Je eigen zoekfunctie in rij 18 werkt niet goed omdat je in die rij steeds alleen naar een waarde zoekt in de tweede rij. Daarom geven met jouw functie alleen de eerste drie datums een correct resultaat.
 
Laatst bewerkt:
Zo misschien?
 

Bijlagen

Vraag: Staat er in elke kolom (rijen 2-12) steeds maar 1 tekst, zoals in je voorbeeld?

Opm: Je eigen zoekfunctie in rij 18 werkt niet goed omdat je in die rij steeds alleen naar een waarde zoekt in de tweede rij. Daarom geven met jouw functie alleen de eerste drie datums een correct resultaat.

Hi Zapatr! In antwoord op je vraag: ja, er staat idd maar 1 tekst, precies zoals in voorbeeld. Ik ben me ervan bewust dat mijn eigen zoekfunctie niet werkte inderdaad, dat was de reden van mijn vraag :-)
 
Dat is ook geen bestaande formule maar eentje die ik in VBA voor je maakte.
Een zgn. UDF (User Defined Function)
 
Typ in A18 en kopieer naar rechts:
Code:
=als.fout(vert.zoeken("zzzz";A$2:A$12;1);"")
 
Dat is ook geen bestaande formule maar eentje die ik in VBA voor je maakte.
Een zgn. UDF (User Defined Function)

A IC! Dan nog steeds interessant om eens nader te bestuderen (überhaupt hele VBA stuk moet ik me nog eens in verdiepen).
 
HEE, die is helemaal vet, kun je heel kort uitleggen?
Met de vermelde oplossing maak ik gebruik van een eigenschap van de functie vertikaal zoeken.
Die functie (zie de helpfile van Excel) ziet er zo uit:

=vert.zoeken(zoekwaarde;bereik;kolomnr;[benaderen])

[benaderen] kan zijn: waar/onwaar (0/1).
Als [benaderen] waar is of wordt weggelaten (ik heb 'benaderen' weggelaten), gaat Excel er vanuit dat de waarden in de zoekkolom in oplopende volgorde zijn gesorteerd. Nu zullen jouw waarden (als er meerdere waarden in een kolom zouden (kunnen) voorkomen) niet in oplopende volgorde zijn gesorteerd, maar dat hoeft ook niet. Ik doe alleen alsof dat wel het geval is en als dan "zzzz" als zoekwaarde wordt gebruikt, zal Excel jouw A-kolom van A2 t/m A12 doorlopen, zoekend naar "zzzz". Die waarde wordt niet gevonden, en omdat ik (met opzet) "zzzz" als zoekwaarde heb gebruikt, is de kans nagenoeg onbestaande dat er een waarde in de kolom voorkomt die ná de waarde "zzzz" komt. Het zoeken stopt daarom bij de laatste cel in de kolom die tekst bevat. Die waarde is niet gelijk aan de zoekwaarde "zzzz", maar het resultaat is wel de waarde die je zoekt, namelijk de enige tekstwaarde die in A2:A12 voorkomt. Vandaar mijn vraag vooraf of er in jouw kolommen meerdere waarden kunnen voorkomen, want moest dat het geval zijn, dan wordt met mijn formule alleen de laatste waarde (de laatste cel met tekst) weergegeven. Duidelijk zo?
 
Laatst bewerkt:
Met de vermelde oplossing maak ik gebruik van een eigenschap van de functie vertikaal zoeken.
Die functie (zie de helpfile van Excel) ziet er zo uit:

=vert.zoeken(zoekwaarde;bereik;kolomnr;[benaderen])

[benaderen] kan zijn: waar/onwaar (0/1).
Als [benaderen] waar is of wordt weggelaten (ik heb 'benaderen' weggelaten), gaat Excel er vanuit dat de waarden in de zoekkolom in oplopende volgorde zijn gesorteerd. Nu zullen jouw waarden (als er meerdere waarden in een kolom zouden (kunnen) voorkomen) niet in oplopende volgorde zijn gesorteerd, maar dat hoeft ook niet. Ik doe alleen alsof dat wel het geval is en als dan "zzzz" als zoekwaarde wordt gebruikt, zal Excel jouw A-kolom van A2 t/m A12 doorlopen, zoekend naar "zzzz". Die waarde wordt niet gevonden, en omdat ik (met opzet) "zzzz" als zoekwaarde heb gebruikt, is de kans nagenoeg onbestaande dat er een waarde in de kolom voorkomt die ná de waarde "zzzz" komt. Het zoeken stopt daarom bij de laatste cel in de kolom die tekst bevat. Die waarde is niet gelijk aan de zoekwaarde "zzzz", maar het resultaat is wel de waarde die je zoekt, namelijk de enige tekstwaarde die in A2:A12 voorkomt. Vandaar mijn vraag vooraf of er in jouw kolommen meerdere waarden kunnen voorkomen, want moest dat het geval zijn, dan wordt met mijn formule alleen de laatste waarde (de laatste cel met tekst) weergegeven. Duidelijk zo?

Yes, helemaal goed, bedankt hiervoor!
 
[benaderen] kan zijn: waar/onwaar (0/1).

Correctie:

Waar = 1
ONWAAR = 0
 
Nog een optie voor A18:
Code:
=ALS.FOUT(ZOEKEN(2;1/(A2:A12<>0);A2:A12);"")
En voor Excel 365:
Code:
=FILTER(A2:A12;A2:A12<>0;"")
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan