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

Speurwerk. Misschien iets met verticaal zoeken, maar ik kom er totaal niet uit

Status
Niet open voor verdere reacties.

jenzie44

Gebruiker
Lid geworden
9 sep 2011
Berichten
68
Hallo,

In de bijlage een bestand, kleine dataset, die ik exporteer uit een ander programma. Het gaat over gewerkte uren door een persoon. Dit voorbeeld is persoon A (Sheet1), maar vergelijkbare bestanden exporteer ik ook van andere personen. Echter zien die er iets anders uit (Zie persoon B in Sheet2).
Enkele verschillen zijn:
- De rijen waarin uren staan zijn er op Sheet2 minder dan op Sheet1.
- Persoon B is kennelijk pas begonnen met werken in week 201526. De eerste 25 weken van het jaar worden dus niet mee geexporteerd.


Wat ik graag zover mogelijk geautomatiseerd wil hebben is wat ik in beide keren onder de data heb gezet. Dat is dus een table die in de eerste kolom alle weken van het jaar bevat (vast, ongeacht wanneer iemand is begonnen met werken), en in de tweede kolom het aantal gewerkte uren in die week. Een van de problemen waar ik op stuitte is dat wanneer iemand een week niet heeft gewerkt (bijvoorbeeld persoon A in week 8). Deze week ook niet wordt gedumpt. Dan wil ik in mijn table dus ook dat er 0 wordt ingevuld bij 201508, en vervolgens bij 201509 weer 40, zoals in de data staat aangegeven.

Kunnen jullie mij helpen?
Als je vragen hebt hoor ik het graag.

Zie bijgevoegd bestand.

Alvast bedankt!!

Met vriendelijke groet,
Rens
 

Bijlagen

Zie bijlage.

Omdat de data zowel qua rijen als kolommen dynamisch is, levert dit een wat exotische formule op.
Ik heb een hulpveldje gedefinieerd in B4 met het regelnummer waar het woord "Total" staat in kolom A: =VERGELIJKEN("Total";A:A;0)

Verder heb ik alle jaar/weeknummers in regel 4 numeriek gemaakt, anders gaat het niet werken.

Formule in Sheet1!B21 en gekopieerd naar beneden:
Code:
=ALS.FOUT(INDEX($A$1:INDEX($1:$1048576;$B$4;AANTAL($4:$4)+1);$B$4;VERGELIJKEN($A21;$4:$4;0));0)

Het stuk $A$1:INDEX($1:$1048576;$B$4;AANTAL($4:$4)+1) levert de matrix op van A1 t/m de regel waar "Total" staat in kolom A en t/m de laatst gevulde kolom.
Op Sheet1 dus A1:AS16.
Let op: de kolombepaling is er op gebaseerd dat A4 leeg is (of in ieder geval niet numeriek) en dat de invulling op regel 4 vanaf kolom B tot het einde volledig numeriek is.

Van die matrix wordt het element geretourneerd op regel $B$4 (16 op Sheet1) en de kolom waar het jaar/weeknummer staat op regel 4.

Als dat er niet is, dan zorgt ALS.FOUT ervoor dat er 0 geretourneerd wordt.
 

Bijlagen

Dank je wel. Super!

Kleine vraag nog. Zou je deze formule ook dusdanig kunnen ontwerpen dat het op een nieuw tabblad ook werkt? Dus dat je op een nieuw tabblad in cel A1 '201501' hebt staan en in cel B1 de formule?

Nu weet ik wel dat ik moet verwijzen naar andere tabbladen door 'Sheet1!', maar het lukt me niet dit toe te passen in de formule.
 
Laatst bewerkt:
Dus zoals hier in het 3e tabblad?


Ik weet dat je naar andere tabbladen moet verwijzen door 'Sheet1!' bijvoorbeeld maar hier lukt het me niet.
 

Bijlagen

Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan