Escape the Sheet (Excel Puzzle): 5 stappe (met prente)
Escape the Sheet (Excel Puzzle): 5 stappe (met prente)
Anonim
Ontsnap aan die blad (Excel -legkaart)
Ontsnap aan die blad (Excel -legkaart)

Escape the sheet is 'n klein Excel -speletjie wat ek 'n paar jaar gelede saamgestel het om 'n groep kollegas 'n paar meer gevorderde Excel -vaardighede te leer terwyl ek pret het met Trivia en Logic -legkaarte, twee dinge waarvan ek hou!

Hierdie speletjie is 'n kombinasie van Excel -formules, voorwaardelike opmaak vir beide die huidige sel en vir waardes gebaseer op 'n ander sel en 'n paar VBA -makros om dit 'n bietjie meer uitdagend te maak om te kodeer.

Stap 1: Die spelkonsep

Die spelkonsep
Die spelkonsep
Die spelkonsep
Die spelkonsep

U het nie regtig 'n groot programmeringservaring of duur sagteware nodig om 'n speletjie te skryf nie; hier is een wat u in Excel kan doen.

Die spel is 'n klein tweeparty, die eerste vlak is 'n trivia -vasvra.

Daar is 'n bank met 50 vrae in die stelsel, maar dit kan meer wees as u so geneig is.

Om moontlike onduidelikheid met spelling of bypassende letters te verwyder, moet u alle vrae numeries beantwoord.

Die stelsel sal lukraak 5 van hierdie vrae aan die speler voorlê; die speler kan 'n nuwe stel vrae aanvra.

Sodra die 5 vrae beantwoord is, sal die stelsel die speler inlig dat hulle nie suksesvol was nie en om weer te probeer, of dit maak kamer 2 oop.

Kamer 2 is 'n logiese raaisel waar 'n kleurvolgorde ook ewekansig gegenereer word en die speler te eniger tyd kan herstel. Elkeen van die kleure word geassosieer met 'n nommer 1-10; die speler moet proef en fout/geheue gebruik om die getalle te vind wat ooreenstem en die volgorde te herhaal.

Stap 2: Die opstelling

Die opstelling
Die opstelling

Aanvanklik het ek die werkboek opgestel met 4 leë werkblaaie.

Vanaf blad 3 het ek 'n tabel gemaak met die opskrif "Vraag" en "Antwoord"

In kolom A en die gebruik van outovul-nommers 1-50 word ingevoer, is dit belangrik dat die vrae genommer word vir die keuringsproses.

Ek gaan dan aanlyn en deur my geheue vir 50 vrae met numeriese antwoorde.

Ons het nou 'n manier nodig om hierdie vrae na die kamer 1 -skerm op vel 1 in te voer.

Dit word gedoen met behulp van 'n VLOOKUP -funksie, waarmee ons die nommer aan die begin van die vraelys kan gebruik. As ons egter net 1-5 uit die kamer 1-blad gebruik, kry ons slegs die eerste 5 vrae en in dieselfde volgorde. Dit is waar blad 2 inkom, daar is 2 rye formules hier, die eerste gebruik die RANDBETWEEN -funksie; dit laat die gebruiker toe om 'n reeks in te voer tussen 'n ewekansige inskrywing. Die probleem is dat met 'n klein reeks soos hierdie die kans groot is dat daar duplikate sal wees, en dit sal nie 'n baie moeilike vasvra oplewer nie. Om dit te oorkom, is daar 'n tweede kolom wat dit 'n stap verder neem en duplikate verwyder met beide die RANK. EQ- en COUNTIF -funksies, dit rangskik die waarde teenoor die res van die lys en tel as daar 'n herhaling van die waarde in die volledige lys, word hierdie waardes bymekaar getel en dit lewer 'n ewekansige en unieke waarde. Ons kan dit bevestig deur die lys te kopieer, plak dan waardes en sorteer die kleinste tot die grootste; dit sal alle unieke waardes 1-50 wys.

Terug in kamer 1, kan ons dan VLOOKUP gebruik om die 1ste, 2de, 3de ens. Waarde uit die lys te haal en dit op die vraestel op te soek vir beide die vraag en die antwoord. Elke keer as die ewekansige getalle herstel word, verskyn 'n nuwe stel vrae op die kamer 1 -skerm.

Excel is ingestel om outomaties te bereken, dit veroorsaak 'n probleem met die RANDBETWEEN -funksie, want elke keer as 'n bladsy gelaai word, word die berekening uitgevoer en die vrae word herrangskik. Dit kan ingestel word op hand koop na Formules in die lint, dan Berekeningsopsies en handmatig, ons sal later die berekeninge versorg.

Voordat ons klaar is met hierdie bladsy, verberg ons kolom C (die werklike antwoorde)

Stap 3: Beantwoord tjeks

Antwoord tjeks
Antwoord tjeks

Die antwoordkontrole is regtig eenvoudig; die waarde van al die verwagte antwoorde word in 'n sel onderaan kolom C in kamer 1 opgesom, die spelers se antwoorde word in kolom D gelaai en opgesom.

'N VBA -skrif word in 'n knoppie geprogrammeer om die berekening uit te voer en die antwoorde na te gaan.

Om die knoppie by te voeg, gaan na Ontwikkelaar in die lint, voeg 'n knoppie by met die invoeg -> knoppie

Sodra u die knoppie getrek het, is daar 'n opsie om 'n nuwe makro by te voeg. In hierdie geval noem ek dit check antwoorde

Dit is net om die berekening uit te voer (slegs vir hierdie blad) en te kyk of die som van die verwagte antwoorde ooreenstem met die som van die spelers se antwoorde. As die nommers nie ooreenstem nie, verskyn 'n boodskapkassie wat sê: probeer weer; as dit suksesvol is, maak ons die vel vir kamer 2 oop.

Daar is ook 'n voorwaardelike formaat in sel B28 met 'n pyltjie, wat die gebruiker vra om oortjies te skuif.

Stap 4: Verskillende vrae

Kry verskillende vrae
Kry verskillende vrae

Om nuwe vrae vir die speler te kry, moet ons die berekeninge op beide blad 2 (die ewekansige getalblad) en dan op die kamer 1 -blad herhaal, dit veroorsaak dat die VLOOKUP na 'n nuwe stel getalle verwys en ook die nuwe verwante vrae. Hierdie stuk kode maak ook die afdeling vir spelers se antwoord skoon.

Stap 5: Kamer 2

Kamer 2
Kamer 2

Kamer 2 is 'n logiese en geheue-raaisel; die gebruiker het 'n reeks van 6 willekeurig gegenereerde kleure aangebied, en dit gebruik weer die RANDBETWEEN-funksie met die reeks 1-10.

Daar is voorwaardelike opmaakreëls wat gebaseer is op die nommer in die sel wat die vul- en lettertipe kleur verander, afhangende van die waarde.

Die speler moet hierdie getalle in volgorde invoer en dan die tjek invoer; daar is geen leidrade tot watter kleur die getal is nie, sodat hulle tydens die toets moet onthou watter resultaat hulle vir elke inskrywing gekry het.

Weereens word die waardes in die antwoordselle opgesom, die antwoorde van die speler word ook opgesom en die makro voer die berekening uit, vul die kleure in en toets die resultaat. Dit laat die speler óf weer probeer, óf hy wens hom geluk met die oorwinning.

Daar is ook 'n nuwe volgorde -knoppie waarmee die speler nuwe kleure kan kry; dit loop die berekening, maar slegs op die selle in ry 10 en maak die speler se antwoorde in ry 12 skoon.

Ek het probeer om die speletjie op te laai, maar aangesien dit 'n.xlsm -lêer is, word dit nie toegelaat nie, laai gerus 'n afskrif hier af, stuur 'n boodskap as u enige vrae het.