Search This Blog

Turinys

Sunday, June 12, 2016

Loteriją surengti padės "Rand"

Ši pamokėlė apie tai, kaip kūrybiškai panaudoti funkciją "Rand", pavyzdžiui, ne tik siekiant atsirinkti audito metu tikrintinus projektus ar mokėjimo prašymus, bet ir norint surengti loteriją.

Kartas nuo karto susiduriame su situacija, kai pastebime turintys šiaip gan naudingą, bet mums nereikalingą gėrybę, pavyzdžiui, už atliktus atsiskaitymus kreditine kortele gautus kvietimus į kiną, už buvimą kredito unijos nariu paštu atsiųstą Daily Card kortelės pakuotę, gautus nuolaidų kodus ir pan.

Mielai kvietimais į kiną ar kita panašia gėrybe pasidalintume su kolegomis, tačiau ką daryti, kai du ar keli kolegos parodo susidomėjimą, tačiau išvydę, kad domisi ne vieni, visi iki vieno atsisako šios gėrybės kitų kolegų labui. Ir taip kvietimai į kiną lieka gulėti ant stalo, besibaimindami sulaukti savo galiojimo pabaigos.

Išvengti tokios užstrigusios situacijos gali padėti loterija, kurioje dalyvautų susidomėjimą išreiškę kolegos. T. y. pranešame, kad yra kvietimai į kiną, kad laukiame paraiškų iki 12 val., o paraiškų skaičiui viršijant vieną bus rengiama loterija. Pats panašiu būdu kažkada laimėjau kuponą "Laisvalaikio" kortelės nemokamam išdavimui.

Kad nereikėtų gadinti popieriaus ar šiaip atrodyti nešiuolaikiškai, tokiam tikslui labai tinkama yra "Rand" funkcija. Ją taip pat labai mėgsta visokie auditoriai ir finansų kontrolieriai, norintys atsirinkti tikrintinus projektus, mokėjimo prašymus ar sąskaitas faktūras.

Tarkime, turime štai tokį loterijos dalyvių sąrašą:


"Rand()" funkcija kiekvienam dalyviui atsitiktine tvarka priskirs skaičių intervale nuo 0 iki 1. Galime paskelbti, kad loterijos laimėtoju bus pripažintas didžiausią skaičių gavęs dalyvis. Tad dešiniau pirmo dalyvio (C2 langelyje) įvedame:

+Rand()

ir spaudžiame "Enter". Yra tik viena bėda - "Rand()" funkcijos suteiktos reikšmės iš karto pasikeis, jei faile atliksime kokį nors veiksmą, pavyzdžiui, ką nors ištrinsime ar failą atidarysime iš naujo. Mūsų loterijos tikslais galime tokį perskaičiavimą laikinai išjungti. Meniu juostos File kortelėje pasirenkame Options, o jame - Formulas. Ties "Workbook Calculation" pasirenkame "Manual", o "Recalculate workbook before saving" paliekame tuščią:


Dabar pertraukiame C2 langelį žemyn iki paskutinio dalyvio (taip nukopijuodami C2 langelyje įrašytą formulę). Kadangi esame išjungę perskaičiavimą, visuose langeliuose atsiras ta pati reikšmė. Tad loterijos rezultatus gausime paspaudę "F9" (tai privers funkciją "Rand()" pateikti naujas reikšmes). Matysime kažką tokio:


Jei norime dokumentuoti rezultatus, galime loterijos rezultatus nukopijuoti į gretimą (D) stulpelį reikšmių formatu (pasirinkdami "Paste Special", o jame - "Values"). Dabar D stulpelyje loterijos rezultatai išliks nepasikeitę net vėl įjungus automatinį perskaičiavimą:


Kad nereikėtų varginti akių ir ieškoti laimėtojo, galima visus dalyvius išrūšiuoti mažėjančia tvarka pagal loterijos metu suteiktą reikšmę. Pasižymime visą mūsų lentelę, meniu juostos Data kortelėje atidarome Sort dialogą, ir pasirenkame rūšiuoti pagal D stulpelį (Column D) mažėjančia tvarka (Largest to Smallest):


Štai ir turime laimėtoją - Tomą Pavardenį:


Jei bandysite pakartoti šį pavyzdį, laimėtojas greičiausiai bus kitas, nes tokia ir yra funkcijos "Rand" paskirtis.

No comments:

Post a Comment