Wie kent het spel Twee voor Twaalf niet, dat al meer dan 20 jaar lang gepresenteerd wordt door Astrid Joosten. En in de puzzelronde komt de paardesprong-puzzel regelmatig voor. Acht letters in acht blokjes waarbij vanaf de beginletter met de paardesprong uit het schaken samengesteld kunnen worden. Maar wat de beginletter is en of het links- of rechtsom "gesprongen" moet worden, moet door de puzzelaar opgelost worden.
Door een opmerking van een speler, vroeg ik mij af of deze puzzel ook in Excel te maken is met een paar formules en een beetje macro-code. En uiteraard een woordenlijst met acht-letter woorden. En daarbij de tijd die je nodig had om het woord te raden.
Dat is wat bijgevoegd bestand doet. Er zijn bij de paardesprong acht vakjes waarin het woord kan beginnen en er kan links- en rechtsom gesprongen moeten worden. Dus 16 mogelijkheden hoe een woord in het puzzelblok getoond kan worden. En ruim 300 woorden om mee te beginnen die uiteraard aangepast kunnen worden.
Door in het oranje invoerveld de tekst te verwijderen, wordt er een nieuwe puzzel klaar gezet en begint de tijd te lopen. Als het woord geraden en ingevoerd is, wordt bij Controle gemeld of het correct is en zo niet, dan wordt het juiste antwoord getoond.
Door het woord "stop" in te typen worden er geen nieuwe puzzels meer getoond.
Om Excel willekeurig een woord te laten kiezen uit de woordenlijst kan er gebruik gemaakt worden van de vba-functie RND(). Helaas blijkt dit niet zo willekeurig te zijn als ik had verwacht. Elke keer begint het met ongeveer dezelfde woorden. Daarom heb ik de macro aangepast en wordt er nu willekeurig gekozen via de functie =ASELECTTUSSEN(), En als de woordenlijst wordt ingekrompen of uitgebreid, dan wordt daar automatisch rekening mee gehouden.
Het zip-bestand kun je HIER downloaden.
Het bestand bevat macro's en daarom is het opgeslagen als een zip-bestand. Bij het uitpakken moet het opgeslagen worden in een map waarin macro's zijn toegestaan, en misschien moet je de macro-beveiliging van Excel aanpassen. Heb je hier vragen over, stuur ze maar op via het contactformulier.