Plukke Ulike tilfeldige tall fra en Range

July 12  by Eliza

La oss si at du har en liste over ansatte (eller produkter, eller widgets, eller hva), og at du ønsker å plukke to elementer fra denne listen, tilfeldig. Det finnes et par forskjellige regnearkfunksjoner du kan bruke til å plukke elementer fra listen, slik som RANDOM og TILFELDIGMELLOM.

Mange bruker TILFELDIGMELLOM-funksjonen, fordi det er veldig enkelt og gir et tilfeldig tall innenfor et område. Dermed, hvis du har 25 varer i listen, kan TILFELDIGMELLOM returnere et tall mellom 1 og 25, som deretter kan tilsvare elementene i listen.

For eksempel, la oss si at din liste over elementer er i området A2: A26, og at du gir denne serien navnet elementer. Du kan deretter sette inn følgende formel i celle C2 til å returnere et tall mellom 1 og antall elementer:

= TILFELDIGMELLOM (1, rader (elementer))

Kopier denne formelen til celle C3, og du har nå to tilfeldige tall som representerer elementer fra listen. I celle D2 og D3 kan du sette formler som dette for å få de faktiske navnene fra listen:

= INDEKS (elementer, K2)

Det eneste problemet med denne tilnærmingen er at det er mulig for begge tilfeller av TILFELDIGMELLOM (cellene C2 og C3) for å returnere samme verdi, og dermed kan du ende opp med det samme elementet valgt to ganger fra listen din.

En måte å omgå dette potensielle problemet er å faktisk velge tre elementer fra listen i stedet for to. Hvis de to første elementer er de samme, så den tredje kan brukes som en "reserve" element for å gi den unike sekund. Fremgangsmåten er ikke idiotsikkert, da det er mulig-men helt usannsynlig, at alle tre vil være den samme.

En annen tilnærming til å velge elementer fra listen ville være å tildele hvert element sin egen tilfeldig verdi, og deretter velge basert på det høyeste antallet i serien. RANDOM funksjonen returnerer en tilfeldig verdi mellom 0 og 1. I hver celle i kolonne B, like til høyre for hvert element i kolonne A, sette denne formelen:

= TILFELDIG ()

Velg celleområdet (B2: B26) og navngi området, ved hjelp av et navn som ItemNums. Du kan deretter fastsette første tilfeldig navn fra listen ved hjelp av følgende matriseformel:

= Avvik (A $ 1, SUM ((Large (ItemNums, 1) = (ItemNums)) * ROW (ItemNums)) - 1,0)

For å markere at dette er en matriseformel, skriv det ved å trykke Shift + Ctrl + Enter. Formelen bør gi et entydig navn. Deretter kan du bruke følgende matriseformelen for å returnere den andre navn:

= Avvik (A $ 1, SUM ((Large (ItemNums, 2) = (ItemNums)) * ROW (ItemNums)) - 1,0)

Grunnen til at bruk av RAND-funksjonen fremgangsmåte fungerer bedre enn å bruke RANDBETWEEN er at sjansen for at RAND vil returnere to identiske verdier er uendelig små, mens sjansene for RANDBETWEEN gjøre det er mye høyere.

ExcelTips er din kilde for kostnadseffektiv Microsoft Excel trening. Dette tipset (2874) gjelder for Microsoft Excel 97, 2000, 2002, og 2003. Du kan finne en versjon av dette tipset for Båndet av Excel (Excel 2007 og senere) her: Plukke Ulike tilfeldige tall fra en Range.