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

Kunnen ALS formules korter?

Status
Niet open voor verdere reacties.

malibuman

Gebruiker
Lid geworden
19 dec 2011
Berichten
85
=ALS(EN(F9="x";F10="x";F22="x";F23="x");0;ALS(EN(F9="x";F10="x";F22="x");0;ALS(EN(F9="x";F10="x";F23="x");0;ALS(EN(F9="x";F22="x";F23="x");F10;ALS(EN(F10="x";F22="x";F23="x");0;ALS(EN(F9="x";F10="x");F23;ALS(EN(F10="x";F22="x");F23;ALS(F10="x";F22;F10)))

Beste mensen,

Bovenstaande code werkt nu bij mij zie bestand (f31). Gelukkig. Maar zou dit niet korter kunnen? Geeft nu het juiste antwoord op 4 logische teste.
Zo moet ik er nog een aantal maken met 5 (f32), 6, en zelfs 10 mogelijke variabele.
Iemand een idee?

Ik raak zo namelijk het overzicht kwijt van welke variabele ik al heb gehad namelijk.

(ps. maakt het uit op welke plaats een als(en()) logische test in de regel staat?

In de bijlage het bestand waar het om gaat.
 

Bijlagen

In jouw voorbeeld, zou je het iets korter en overzichtelijker maken wellicht, door "OF" te gebruiken in de gevallen dat de uitkomst gelijk moet worden.

Code:
=ALS(OF(EN(F9="x";F10="x";F22="x";F23="x");EN(F9="x";F10="x";F22="x;(EN(F9="x";F10="x";F23 ="x"));0;ALS(EN(F9="x";F22="x";F23="x");F10;ALS(EN(F10="x";F22="x";F23="x");0;ALS(OF(EN(F9="x";F10="x");EN(F10="x";F22="x"));F23;ALS(F10="x";F22;F10)))

Dit kun je samenvatten tot:

Code:
=ALS(EN(F9="x";F10="x";OF(F22="x";F23="x"));0;ALS(EN(F9="x";F22="x";F23="x");F10;ALS(EN(F10="x";F22="x";F23="x");0;ALS(OF(EN(F9="x";F10="x");EN(F10="x";F22="x"));F23;ALS(F10="x";F22;F10)))
misschien is verder inkorten nog mogelijk afhankelijk of de volgorde van de gebeurtenissen uitmaakt

i.p.v.

Code:
=ALS(EN(F9="x";F10="x";F22="x";F23="x");0;ALS(EN(F9="x";F10="x";F22="x");0;ALS(EN(F9="x";F10="x";F23 ="x");0;ALS(EN(F9="x";F22="x";F23="x");F10;ALS(EN(F10="x";F22="x";F23="x");0;ALS(EN(F9="x";F10="x"); F23;ALS(EN(F10="x";F22="x");F23;ALS(F10="x";F22;F10)))
 
Laatst bewerkt door een moderator:
Nog een alternatief voor een verkorte formule:
Code:
=ALS(SOM(F9="x";F10="x";F22="x";F23="x")>2;0;ALS(SOM(F9="x";F10="x";F22="x")=2;F23;ALS(F10="x";F22;F10)))

Ook maar even het voorbeeld met uitleg.
 

Bijlagen

Laatst bewerkt:
?
Code:
=ALS(F9&F10&F22&F23="xxxx";0;ALS(F9&F10&F22="xxx";F23;ALS(F10="x";F22;F10)))
 
Idee van snb is goed, maar volgens mij klopt de formule en daarmee het resultaat zo niet meer in alle gevallen.

Je kunt dus inderdaad ook een vergelijking maken als: F9&F10&F22&F23="xxxx"
 
Het idee van snb komt in feite overeen met de oorspronkelijke formule uit #1. De EN-functie is vervangen door de &-operator. Het blijft immers een positionele vergelijking van de waardes die er wordt doorgevoerd.
 
Laatst bewerkt:
Beste mensen,

Bedankt voor jullie hulp. Ga ermee aan de gang.

Hoop dat ik het begrijp. Maar heb wel een idee.
 
Hallo beste helpers,

Heb nu eindelijk ff tijd naar de formules te kijken.
even voor mijn gedachte:

@thoralf jij kijkt met je formule naar het aantal mogelijke "X"-en.... zijn die groter dan 2 ( >2) dan is het resultaat "0" etc etc. Tenminste ik ga er vanuit dat deze formule op deze manier werkt. Resultaat is helemaal zoals ik het zou willen.

@snb : jouw formule heeft in mijn geval te maken met het aantal cellen (variabele/mogelijke "x"-en en die vermeld ik dan tussen de " " du als(f9&f10&f11&f22&f23="xxxxx" toch of snap ik hem niet?

Ben al weer aardig op weg, in ieder geval weer iets geleerd..

Zet hem nog niet op slot, ben nog niet klaar,,, :)
 
sorry @ thoralf er zit nog een fout in zie bijlage. In een als ,,, waarbij f10 leeg is moet deze f 10 aangeven en dat doet hij nu niet,

Zie bijlage
ben in d32 verder gegegaan met het volgende vergelijk heb de alsen onder de jouwe gezet,
 

Bijlagen

Correct.
Je moet wel bedenken dat de volgorde waarin de verschillende onderdelen staan wel belangrijk is. Maar dat had je ook al wel beseft met de geneste ALS-functies.
In mijn formule heb ik consequent de tests en de volgorde van jouw eigen formule gevolgd.
Wil je dit opnieuw voor een andere situatie toepassen bedenk dan wel dat het dan verstandig is te beginnen met de meest uitgebreide situatie (in jouw voorbeeld: de 4 maal x situatie) en dan de dan uitgebreidste (de situatie met de 3 x-en).
 
Omdat het hier slechts om één enkele, specifieke situatie gaat van de resultaten van de eertste SOM-functie kun je dit eenvoudig oplossen door het resultaat 0 te vervangen door een enkele ALS-functie.
Dat betekent dat je de rode 0 in onderstaande formule
Code:
=ALS(SOM(F9="x";F10="x";F22="x";F23="x")>2;[COLOR="#FF0000"]0[/COLOR];ALS(SOM(F9="x";F10="x";F22="x")=2;F23;ALS(F10="x";F22;F10)))
vervangt door
Code:
ALS(F10<>"x";F10;0)

Alternatief:
Code:
=ALS(F10="x";ALS(SOM(F9="x";F10="x";F22="x";F23="x")>2;0;ALS(SOM(F9="x";F10="x";F22="x")=2;F23;F22));F10)
 
Laatst bewerkt:
@thoralf als(f10<>"x") wat doet dit dan? ik begrijp deze vergelijking (nog) niet?
 
Dat geeft op die plek weer of F10 al of niet gelijk is aan x.
 
=ALS(F10="x";ALS(SOM(F9="x";F10="x";F22="x";F23="x")>2;0;ALS(SOM(F9="x";F10="x";F22="x")=2;F23;F22));F10)[\QUOTE]

Deze doet het helemaal. nu moet ik zo f32 en f33 ook in gaan vullen, ben eenzelfde lijstje met mogelijkheden aan het maken maar het worden steeds meer combinaties... begin nu een beetje gek te worden.

Comp.lars is het origineel

lars 4.2 is mijn test bestand

Koop helemaal vast met het "teveel" aan mogelijke combinatatie. Kijk maar in het origineel, kun je speltype kiezen. Uiteindelijk kom ik bij een combinatie van 5 middenvelders en 2 reserves uit..... pffff hoeveel mogelijkheden kun je dan hebben,,,,, @ overzicht helemaal kwijt zeg ik.

Help aub
 

Bijlagen

Malibuman,

Kijk eens even of je hier mee gered bent?

Aanvulling:
De oplossing heeft één beperking: aantallen reserves v, m en a moeten 2 zijn. als er meer reserves van een soort zijn dan moeten er formule delen worden aangepast.
 

Bijlagen

Laatst bewerkt:
Beste beste Thoralf,

Jeetje man, ben je hier heel de nacht mee bezig geweest? Maar zoals ik even snel kijk begrijp ik dat je de formules hebt opgedeeld en later weer wij elkaar voegt?
Maar dit gaat helemaal boven mijn pet.

Ik heb zojuist even gekeken en kom tot 1 fout: als er bij alle basis V's een x staat zou op plaats f35 een 0 moeten komen aangezien beide reserve v's al zijn gebruikt. Dit doet hij idem bij de middenvelders.
Maar ik ben zo echt al een heel eind, dankzij jouw hulp. Hier was ik alleen niet achter gekomen.

Volgende probleem is, weet niet of je het gezien hebt, maar er kan gekozen worden voor 4 speltypen:

1) 1-4-4-2
2) 1-4-3-3
3) 1-3-4-3
4) 1-3-5-2

Hiermee veranderd dus de basis opstelling

@ Thoralf.... ook bij verandering van speltype werkt deze
Jij bent een geweldenaar

Kan ik nu deze formules doortrekken naar alle ronden?
De deelformules staan nu in de weg. Neem aan dat die ook moeten blijven staan?
Kan ik die verplaatsen zonder schade aan te richten?

Nogmaals helemaal top.

Lars Jansen
 

Bijlagen

Foutje even aangepast. Er ontbrak een groter dan-teken.

Ik zou een kopie van het bestand maken en vervolgens de formules bij opbouwdelen verwijderen. Deze staan daar om de opbouw van de formule te verduidlijken. Voor de werking van het sheet zijn ze niet nodig.
Je kunt de formules doortrekken naar alle rondes.


Correctie:
Ik kwam nog een klein foutje tegen: een ten onrechte geplaatst $-teken. Daarvoor bijlage aangepast.
 

Bijlagen

Laatst bewerkt:
hallo Malibuman

ik ben heel benieuwd

wat die formule moet doen (in woorden)

en wat die cijfertjes in de ronde's inhouden?

groet sylvester
 
@thoralf super bedankt voor je hulp hier was ik nooit uitgekomen. ga morgen even kijken. zit nu op een verjaardag.

@sylvester stuur morgen een beschrijving ben nu antwoord aan het geven op mijn mobiel
hier zie ik bijna niet wat ik typr

@thoralf je bent een geweldenaar +1000 hahaha
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan