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

Meer dan 64 geneste niveaus omzeilen met ALS(LINKS

Status
Niet open voor verdere reacties.

Rick52

Gebruiker
Lid geworden
9 jan 2011
Berichten
27
Ik ben opzoek naar een manier om meer dan 64 geneste niveaus in te voeren.
Ik heb twee velden: 1 veld met een nummer, 1 veld met een weeknummer. Aan hand van het derde en vierde nummer kan het weeknummer worden bepaald met de volgende formule:

ALS(DEEL(G11;3;2)="01";1;ALS(DEEL(G11;3;2)="02";2;ALS(DEEL(G11;3;2)="03";3;ALS(DEEL(G11;3;2)="04";4; etc etc (tot ALS(DEEL(G11;3;2)="53";53

Nu heb ik al 53 geneste niveaus. Ik krijg het niet voor mekaar om deze formule te versimpelen. Kan iemand mij hierbij helpen?

Alvast bedankt.

Rick

(In onderwerp staat ALS(LINKS, ik bedoel hier natuurlijk ALS(DEEL )
 
Laatst bewerkt:
Code:
=DEEL(G11;3;2)*1
Probeer het eens met deze korte formule
 
Laatst bewerkt:
Beste popipipo

Kan je je antwoord misschien uitleggen? Ik snap niet precies wat ik nu moet proberen.
Alvast bedankt
 
Sorry voor de veranderingen.
Dit kwam omdat ik de vraag eerst verkeerd geïnterpreteerd had.
Als je even een excel bestandje zonder gevoelige informatie plaats zal ik de formule aanpassen.
 
Je zoekt telkens een getal in je =DEEL vergelijking. Doordat daar de uitkomst '01', '02' etc etc is kun je dit vermenigvuldigen met 1 waardoor de uitkomst 1, 2 etc etc wordt.
 
Vervang jouw 53-voudig geneste ALS-formule door die van popipipo.
Duidelijker kan ik het niet zeggen. Als je er nog steeds niet uitkomt, plaats dan een voorbeeldbestand.
 
Bedankt! Dit scheelt al een hele hoop. Echter heb ik nog een kleine toevoeging:

- het komt ook wel eens voor dat het derde en vierde cijfer "99" zijn (jaar 1999). En daarnaast bevinden deze cijfers zich niet op de derde en vierde plaats, maar de tweede en derde plaats. Hoe kan ik dit het beste oplossen?
 
Laatst bewerkt:
Hoe bedoel je combineren?

Zo?


Code: 1401blabla

Antwoord: Week 1 - 2014

Code:
=TEKST.SAMENVOEGEN("Week ";G13;" - ";G12)

G13 = week
G12 = jaar

Combinatie:
Code:
=TEKST.SAMENVOEGEN("Week ";DEEL(G11;3;2)*1;" - ";2000+LINKS(G11;2))

G11 = code
 
Hoe bedoel je combineren?

Zo?


Code: 1401blabla

Antwoord: Week 1 - 2014

Code:
=TEKST.SAMENVOEGEN("Week ";G13;" - ";G12)

G13 = week
G12 = jaar

Combinatie:
Code:
=TEKST.SAMENVOEGEN("Week ";DEEL(G11;3;2)*1;" - ";2000+LINKS(G11;2))

G11 = code

Ik bedoel dat ik zoek naar een manier om (=DEEL(G11;3;2)*1) te combineren met (ALS(LINKS(G11;2)="14";2014; ) in één regel.
 
het komt ook wel eens voor dat het derde en vierde cijfer "99" zijn (jaar 1999). En daarnaast bevinden deze cijfers zich niet op de eerste en tweede plaats, maar de tweede en derde plaats
Kan je dan eens uitleggen hoe de seriecode is opgebouwd?
Ik dacht dat de 1é 2 cijfers het jaartal was en de 2 volgende cijfers het weeknummer
 
Kan je dan eens uitleggen hoe de seriecode is opgebouwd?
Ik dacht dat de 1é 2 cijfers het jaartal was en de 2 volgende cijfers het weeknummer

Dat klopt. Helaas is dit de nieuwe notatie en is de oude notatie ook nog in omloop.

Nieuw notatie: 1611_____ = 2016, week 11
Oude notatie: 481___ = 1981, kwartaal 4

Ik probeer dus een slimme formule te creëren die aan hand van het ingevulde nummer het jaartal en het weeknummer kan identificeren.
Voor de kwartalen gebruik ik:
- Kwartaal 1 = weeknummer 13
- Kwartaal 2 = weeknummer 26
- Kwartaal 3 = weeknummer 39
- Kwartaal 4 = weeknummer 52

Sorry voor de verwarring
 
Ik bedoel dat ik zoek naar een manier om (=DEEL(G11;3;2)*1) te combineren met (ALS(LINKS(G11;2)="14";2014; ) in één regel.

Dat gebeurt in de laatste formule alleen wordt er een mooie zin van gemaakt. Als je enkel de combinatie wilt van 2014 (als(links(G11;2)=14;2014;"") en 01 (deel(G11;3;2)*1) krijg je het volgende

Code:
=tekst.samenvoegen(als(links(G11;2)=14;2014;"");" ";deel(G11;3;2)*1)

Je uitleg is trouwens ook ernstig onduidelijk en verwarrend. Hoe ziet de code er precies uit en wat wil je als resultaat hebben?
 
Dat gebeurt in de laatste formule alleen wordt er een mooie zin van gemaakt. Als je enkel de combinatie wilt van 2014 (als(links(G11;2)=14;2014;"") en 01 (deel(G11;3;2)*1) krijg je het volgende

Code:
=tekst.samenvoegen(als(links(G11;2)=14;2014;"");" ";deel(G11;3;2)*1)

Je uitleg is trouwens ook ernstig onduidelijk en verwarrend. Hoe ziet de code er precies uit en wat wil je als resultaat hebben?

Is mijn laatste uitleg duidelijker?
 
Dat klopt. Helaas is dit de nieuwe notatie en is de oude notatie ook nog in omloop.

Nieuw notatie: 1611_____ = 2016, week 11
Oude notatie: 481___ = 1981, kwartaal 4

Ik neem aan dat die bestanden met oude notatie niet meer muteren? maar nuttig zijn voor historisch vergelijk. Is het niet mogelijk om die bestanden eenmalig om te zetten naar de nieuwe notatie, zodat dit consistent is door alle jaren en je met de eenvoudige formule kunt volstaan? soms is het eenvoudiger je (statische) input op te schonen dan een formule te compliceren.
 
Ik neem aan dat die bestanden met oude notatie niet meer muteren? maar nuttig zijn voor historisch vergelijk. Is het niet mogelijk om die bestanden eenmalig om te zetten naar de nieuwe notatie, zodat dit consistent is door alle jaren en je met de eenvoudige formule kunt volstaan? soms is het eenvoudiger je (statische) input op te schonen dan een formule te compliceren.

Helaas niet mogelijk.
 
Dat klopt. Helaas is dit de nieuwe notatie en is de oude notatie ook nog in omloop.

Nieuw notatie: 1611_____ = 2016, week 11
Oude notatie: 481___ = 1981, kwartaal 4

Ik probeer dus een slimme formule te creëren die aan hand van het ingevulde nummer het jaartal en het weeknummer kan identificeren.
Voor de kwartalen gebruik ik:
- Kwartaal 1 = weeknummer 13
- Kwartaal 2 = weeknummer 26
- Kwartaal 3 = weeknummer 39
- Kwartaal 4 = weeknummer 52

Sorry voor de verwarring

Dit is wat duidelijker. Hoe is de code vervolgens opgebouwd? Heb je wat voorbeeldjes? Begint het bijvoorbeeld met een letter? En bestaat de code verder alleen uit letters of staan er ook cijfers tussen? Voorbeeldcode's die niet perse jouw code's moeten zijn maar wel dezelfde opzet hebben dus :)
 
Dit is wat duidelijker. Hoe is de code vervolgens opgebouwd? Heb je wat voorbeeldjes? Begint het bijvoorbeeld met een letter? En bestaat de code verder alleen uit letters of staan er ook cijfers tussen? Voorbeeldcode's die niet perse jouw code's moeten zijn maar wel dezelfde opzet hebben dus :)

Voorbeeldcodes zijn:
1611000 (2016, week 11)
4102931 (kwartaal 4, 2010)
2993721 (kwartaal 2, 1999)
3652383 (kwartaal 3, 1965)

De overgang ligt bij 2014. Dus:
4132736 (kwartaal 4, 2013)
1401283 (2014, week 01)

Ik dacht dat dit een leuke, overzichtelijke puzzel ging worden. Uiteindelijk is het een ingewikkelde en (te) lange formule geworden die ik niet kan afmaken omdat ik dan boven de 64 geneste niveaus kom :)
 
Laatst bewerkt:
Plaats eens wat meer voorbeel gegevens dan je nu hebt gedaan. De oude en nieuwe codes zijn even lang, dus daarin onderscheid maken is erg lastig. Is er misschien een andere manier om te bepalen of we met een oude dan wel nieuwe code te maken hebben (andere kolom misschien)?
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan