Kazalo:

Escape the Sheet (Excel Puzzle): 5 korakov (s slikami)
Escape the Sheet (Excel Puzzle): 5 korakov (s slikami)

Video: Escape the Sheet (Excel Puzzle): 5 korakov (s slikami)

Video: Escape the Sheet (Excel Puzzle): 5 korakov (s slikami)
Video: She Gets A SURPRISE! 😱 2024, November
Anonim
Escape the Sheet (Excelova uganka)
Escape the Sheet (Excelova uganka)

Escape the sheet je majhna igra Excel, ki sem jo sestavil pred nekaj leti, da bi skupino sodelavcev naučil nekaj naprednejših veščin Excela, hkrati pa se malo zabaval z ugankami Trivia and Logic, dve stvari, ki so mi všeč!

Ta igra je kombinacija formul Excela, pogojnega oblikovanja tako za trenutno celico kot za vrednosti, ki temeljijo na drugi celici, in nekaj makrov VBA, zaradi česar je kodiranje nekoliko zahtevnejše.

Korak: Koncept igre

Koncept igre
Koncept igre
Koncept igre
Koncept igre

Za pisanje igre res ne potrebujete velikih programerskih izkušenj ali drage programske opreme, tukaj je ena, ki jo lahko naredite v Excelu.

Igra je majhen dvostranski, prva stopnja je kviz za malenkosti.

V sistemu je 50 vprašanj, čeprav je to lahko več, če ste tako nagnjeni.

Če želite odstraniti morebitne dvoumnosti s črkovanjem ali velikimi črkami, imate na vsa vprašanja številčne odgovore.

Sistem bo igralcu naključno predstavil 5 teh vprašanj, igralec lahko zahteva nov sklop vprašanj.

Ko bo odgovorjeno na 5 vprašanj, bo sistem igralca obvestil, da ni uspel, in naj poskusi znova, ali pa odpre sobo 2.

Soba 2 je logična uganka, v kateri je tudi naključno ustvarjeno barvno zaporedje, ki ga lahko igralec kadar koli regenerira. Vsaka od barv je povezana s številko 1-10, igralec mora s poskusi in napakami/pomnilnikom najti številke, ki ustrezajo, in ponoviti zaporedje.

2. korak: Namestitev

Nastavitev
Nastavitev

Sprva sem nastavil delovni zvezek s 4 praznimi delovnimi listi.

Od 3. lista sem ustvaril tabelo z glavo "Vprašanje" in "Odgovor"

V stolpec A in z uporabo samodejnega izpolnjevanja vnesete številke 1-50, pomembno je, da so vprašanja oštevilčena za izbirni postopek.

Nato odidem na internet in v spominu najdem 50 vprašanj s številčnimi odgovori.

Zdaj potrebujemo način za uvoz teh vprašanj na zaslon Room 1 na listu 1.

To naredimo s funkcijo VLOOKUP, kar nam omogoča uporabo številke na začetku vrstice z vprašanjem. Če pa bi uporabili le 1-5 iz lista Soba 1, bi dobili le prvih 5 vprašanj in v istem vrstnem redu. Tu pride 2. list, tukaj sta 2 vrstici formul, prva uporablja funkcijo RANDBETWEEN, kar uporabniku omogoča vnos območja, med katerim bo ustvarjen naključni vnos. Težava je v tem, da je pri majhnem obsegu, kot je ta, velika verjetnost, da bo prišlo do dvojnikov, kar pa ne bi pomenilo zelo zapletenega kviza. Torej, da bi to premagali, obstaja drugi stolpec, ki naredi korak dlje in odstrani dvojnike z uporabo funkcij RANK. EQ in COUNTIF, ki te vrednosti razvrstijo glede na preostali del seznama in štejejo, če se vrednost v Na celotnem seznamu se te vrednosti seštejejo in tako dobimo naključno in edinstveno vrednost. To lahko potrdimo s kopiranjem seznama, nato prilepimo vrednosti in razvrstimo najmanjše do največje, tako bodo prikazane vse edinstvene vrednosti 1-50.

Nazaj v sobo 1 lahko nato z VLOOKUP -om vzamemo vrednost 1., 2., 3. itd. S seznama in jo poiščemo na listu z vprašanji za vprašanje in odgovor. Vsakič, ko se naključne številke ponovno ustvarijo, se na zaslonu 1. sobe prikaže nov sklop vprašanj.

Excel je konfiguriran za samodejno izračunavanje, kar povzroča težave s funkcijo RANDBETWEEN, ker se ob vsakem nalaganju strani izračun zažene in preuredi vprašanja. To lahko nastavite na ročni nakup, pojdite na Formule na traku, nato na Možnosti izračuna in nastavite na ročno, za izračun bomo poskrbeli kasneje.

Preden končamo s to stranjo, skrijemo stolpec C (dejanski odgovori)

3. korak: Preverite odgovore

Preverjanje odgovorov
Preverjanje odgovorov

Preverjanje odgovorov je zelo preprosto. Vrednost vseh pričakovanih odgovorov se sešteje v celico na dnu stolpca C v sobi 1, odgovori igralcev se naložijo v stolpec D in seštejejo.

Skript VBA je programiran v gumb za izvajanje izračuna in preverjanje odgovorov.

Če želite dodati gumb, pojdite na Razvijalec na traku in ga dodajte z uporabo Vstavi -> Gumb

Ko narišete gumb, obstaja možnost, da dodate nov makro. V tem primeru sem to poimenoval preverjanje odgovorov

Vse, kar naredite, je, da izvede izračun (samo za ta list) in preveri, ali se vsota pričakovanih odgovorov ujema z vsoto odgovorov igralcev. Če se številke ne ujemajo, se prikaže okno s sporočilom, da poskusite znova, če so uspešne, razkrijemo list za sobo 2.

V celici B28 je tudi pogojna oblika s puščico, ki uporabnika pozove, da premakne zavihke.

4. korak: Pridobivanje različnih vprašanj

Pridobivanje različnih vprašanj
Pridobivanje različnih vprašanj

Če želite pridobiti nova vprašanja za igralca, preprosto ponovimo izračune na obeh straneh 2 (list z naključnimi številkami) in nato na listu sobe 1, zaradi česar se VLOOKUP sklicuje na nov niz številk in vleče tudi nov povezana vprašanja. Ta koda počisti tudi razdelek Odgovori igralcev.

5. korak: Soba 2

Soba 2
Soba 2

Soba 2 je logična in pomnilniška uganka, ki smo jo uporabniku predstavili z zaporedjem 6 naključno ustvarjenih barv, spet uporablja funkcijo RANDBETWEEN z razponom 1-10.

Obstajajo pravila pogojnega oblikovanja, ki glede na število v celici spremenijo barvo polnila in pisave glede na vrednost.

Igralec mora te številke vnesti zaporedno in nato vnesti check, ni namigov, katera barva je kakšna številka, zato se morajo pri testiranju spomniti, kakšen rezultat so dobili za vsak vnos.

Ponovno se seštejejo vrednosti v celicah za odgovore, seštejejo se tudi odgovori predvajalnika in makro zažene kalkulator, izpolni barve in preizkusi rezultat. To bodisi pozove igralca, naj poskusi znova, ali pa mu čestita za zmago.

Na voljo je tudi nov gumb za zaporedje, ki igralcu omogoča, da pridobi nove barve, ta zažene kalkulator, vendar le na celicah v vrstici 10 in počisti odgovore igralca v vrstici 12.

Poskušal sem naložiti igro, a ker je datoteka.xlsm, to ni dovoljeno, zato lahko kopijo naložite od tu, če imate kakršna koli vprašanja, mi pošljite sporočilo.

Priporočena: