Excel - Jak wylosować pozycje z listy bez powtórzeń - widzowie #8
HTML-код
- Опубликовано: 20 июн 2013
- Zobacz kurs wideo Mistrz Excela
www.udemy.com/mistrz-excela/?...
Darmowy Kurs Excel 2010 podstawy exceliadam.pl/darmowy-kurs
Excel - Jak wylosować pozycje z listy bez powtórzeń - widzowie #8 ExceliAdam.pl/
Dostałem zapytanie jak wylosować 2 pozycje z 5 elementów bez powtórzeń. Znalazłem 2 rozwiązania (oba będą działać też dla innej ilości elementów). Oba na początek korzystając z funkcji LOS
Chodzi o to, żeby obok listy elementów ustawić wynik funkcji los, czyli losową liczbę od 0 do 1. Teraz w pierwszym rozwiązaniu kopiujesz wynik i sortujesz go po wielkości liczb (czy rosnąco czy malejąco nie ma znaczenia). Uzyskujesz listę elementów ustawioną losowo. Teraz żeby wybrać 2 elementy korzystasz z funkcji INDEKS, której podajesz zakres listy i numery wierszy, które chcesz pobrać:
=INDEKS($E$2:$E$6; WIERSZ(A1))
Numer wiersza możesz podać tak jak tu w przykładzie odwołując się do pierwszej komórki (później będzie się ono zmieniać wraz z przeciąganiem formuły w dół).
Drugie rozwiązanie wykorzystuje trudniejszą formułę, ale za to jest dynamiczne, czyli zmienia się wraz ze zmianą wyników funkcji LOS (pierwsze jest stabilne dopóki ponownie nie posortujesz listy).
Zaczynamy od znalezienia k-tego największego elementu za pomocą funkcji MAX.K, czyli najpierw 1 największy, potem 2 itd.
=MAX.K($A$2:$A$6;WIERSZ(A1))
Ponownie korzystam z odwołania do wiersza by dynamicznie wybierać elementu po kolei.
Następnie trzeba znaleźć pozycję tego elementu, czyli funkcja PODAJ.POZYCJĘ będzie potrzebna. 1 argument to znaleziona k-ta największa wartość, 2 to zakres przeszukiwania, a 3 mówi o tym, że dopasowanie ma być dokładne (ustawiony na 0).
=PODAJ.POZYCJĘ(MAX.K($A$2:$A$6;WIERSZ(A1));$A$2:$A$6;0)
Teraz wystarczy wykorzystać funkcję INDEKS podobnie jak w 1 przykładzie i uzyskujemy formułę:
=INDEKS($B$2:$B$6;PODAJ.POZYCJĘ(MAX.K($A$2:$A$6;WIERSZ(A1));$A$2:$A$6;0))
Excel - Jak wylosować pozycje z listy bez powtórzeń - widzowie #8
• Excel - Jak wylosować ...
Dla mnie BOMBA, wszystko działa, bez powtórzeń. Dzięki. Właściwie potrzebne mi to było, żeby losować grupę pracowników która ma być poddana sprawdzeniu stanu trzeźwości w firmie.
Hej. Świetna robota i ogrom wiedzy.
Jak ktoś szuka jak wylosować większą ilość liczb i sprawdzić czy się powtarzają zapraszam na kanał.
W zakładce excel zaawansowany jest gotowy przykład.
Sposób znany i chyba najlepszy nie? Można by robić przedziały losowań ale to nie byłoby zdaje się do końca losowe...
Z Excelem można wiele kombinować, zależy ile dokładnie potrzebujesz.
Super! Dzięki!
Myślę, że zamiast stosowania formuł podaj.pozycje oraz indeks lepiej i szybciej byłoby użyć wyszukaj.pionowo.
Pozdrawiam serdecznie :)
oczywiście to też alternatywa
Witam, jak spowodować że funkcja losująca (obojętnie czy los, czy rand) będzie nieulotna? chcę liczby wylosować tylko raz. Pozdrawiam
wylosuj i skopiuj jako tekst, losowanie zawsze się przelicza na nowo
a jak moge te funkcje zastosowac jak ma zakres numerow i chce zeby mi wybieralo losowo np:1 2 4 5 8 9 10 11 14 18 19 20 21 23 27 30 31 32 34 39 40 41 43 48 49
i chce zeby mi losowo wybralo 3; 4; lub 5 numerow z tego zakresu .dodam jeszcze ze su ulozone poziomo nie pionowo. czy jest jakas szansa na pomoc.
Analogicznie jak w filmie tylko zwracasz uwagę na orientację poziomą, czyli formuła z powtórzeniami jest prosta=INDEKS($A$1:$H$1;;LOS.ZAKR(1;8))pomijamy w funkcji INDEKS jej drugi argument lub wpisujemy 1.a bez powtórzeń musisz sortować w poziomie i analogicznie=INDEKS($B$2:$B$6;1;PODAJ.POZYCJĘ(MAX.K($A$2:$A$6;WIERSZ(A1));$A$2:$A$6;0))
Super.
Chciałbym to rozwinąć o wydruk różnych wyników losowania.
Konkretnie:
Mam 10 pytań testowych w wierszach B1:B10
Chcę wylosować i WYDRUKOWAĆ NA OSOBNYCH ARKUSZACH po 5 pytań dla podanej liczby egzaminowanych...
Da radę? :)
To niestety wydaje mi się, że dla każdego arkusza będziesz potrzebował oddzielnej kolumny z losowymi liczbami.
Przepraszam bardzo, ale pierwsze rozwiązanie chyba nie działa - przecież wartości Pozycja 4D i Pozycja 5E zostały wybrane "na sztywno" jako 1-szy i 2-gi wiersz tablicy A2:A6. Aby działało, trzeba by za każdym razem ręcznie sortować wybrany zakres wg losowych liczb.
Jest dokładnie tak jak opisałeś :D trzeba za każdym razem sortować, żeby uzyskać nowe losowanie.
Bez sensu te Twoje poradniki. To jest drugi taki poradnik, w którym stosujesz MAX.K(...;WIERSZ(A1)), co u mnie kompletnie nie działa, bo albo wyskakuje #ARG! albo coś innego, przez co w ogóle nie mogę wylosować niczego...
wiersz(a1) jak przeciągasz w dół generuje liczby {1;2;3...} czyli max.k=1 potem 2,3, na pewno dobrze wpisałeś? przeciągasz w dół?
@@fwefwefwefwefwefwe Już sobie poradziłem, dziękuję.