İçindekiler
Bu eğitimde, yeni bir dinamik dizi fonksiyonu olan RANDARRAY ile rastgele sayıların nasıl oluşturulacağı, bir listenin nasıl rastgele sıralanacağı, rastgele seçimlerin nasıl yapılacağı ve verilerin gruplara nasıl rastgele atanacağı gösterilmektedir.
Muhtemelen bildiğiniz gibi, Microsoft Excel'in zaten birkaç rastgele işlev işlevi vardır - RAND ve RANDBETWEEN. Başka bir tane tanıtmanın anlamı nedir? Özetle, çünkü çok daha güçlüdür ve her iki eski işlevin yerini alabilir. Kendi maksimum ve minimum değerlerinizi ayarlamanın yanı sıra, kaç satır ve sütunun doldurulacağını ve rastgele ondalık sayılar mı yoksaDiğer fonksiyonlarla birlikte kullanıldığında, RANDARRAY verileri karıştırabilir ve rastgele bir örnek seçebilir.
Excel RANDARRAY işlevi
Excel'deki RANDARRAY işlevi, belirttiğiniz herhangi iki sayı arasında rastgele sayılardan oluşan bir dizi döndürür.
Microsoft Excel 365'te sunulan altı yeni dinamik dizi işlevinden biridir. Sonuç, belirtilen sayıda satır ve sütuna otomatik olarak yayılan dinamik bir dizidir.
Fonksiyon aşağıdaki sözdizimine sahiptir. Lütfen tüm argümanların isteğe bağlı olduğuna dikkat edin:
RANDARRAY([rows], [columns], [min], [max], [whole_number])Nerede?
Sıralar (isteğe bağlı) - kaç satırın doldurulacağını tanımlar. Atlanırsa, varsayılan olarak 1 satır olur.
Sütunlar (isteğe bağlı) - kaç sütunun doldurulacağını tanımlar. Atlanırsa, varsayılan değer 1 sütundur.
Min (isteğe bağlı) - üretilecek en küçük rastgele sayı. Belirtilmezse, varsayılan 0 değeri kullanılır.
Maksimum (isteğe bağlı) - oluşturulacak en büyük rastgele sayı. Belirtilmezse, varsayılan 1 değeri kullanılır.
Whole_number (isteğe bağlı) - ne tür değerlerin döndürüleceğini belirler:
- DOĞRU - tam sayılar
- FALSE veya atlanmış (varsayılan) - ondalık sayılar
RANDARRAY işlevi - hatırlanması gerekenler
Excel çalışma sayfalarınızda verimli bir şekilde rastgele sayılar oluşturmak için dikkat etmeniz gereken 6 önemli nokta vardır:
- RANDARRAY işlevi yalnızca Microsoft 365 için Excel ve Excel 2021'de kullanılabilir. Excel 2019, Excel 2016 ve önceki sürümlerde RANDARRAY işlevi kullanılamaz.
- RANDARRAY tarafından döndürülen dizi nihai sonuçsa (bir hücreye çıktı olarak verilir ve başka bir işleve aktarılmazsa), Excel otomatik olarak dinamik bir dökülme aralığı oluşturur ve bunu rastgele sayılarla doldurur. Bu nedenle, formülü girdiğiniz hücrenin altında ve/veya sağında yeterince boş hücre olduğundan emin olun, aksi takdirde #SPILL hatası oluşur.
- Bağımsız değişkenlerden hiçbiri belirtilmezse, RANDARRAY() formülü 0 ile 1 arasında tek bir ondalık sayı döndürür.
- Eğer sıralar veya/ve sütunlar argümanları ondalık sayılarla temsil ediliyorsa, ondalık noktadan önceki tam sayıya kesilecektir (örneğin 5.9, 5 olarak değerlendirilecektir).
- Eğer min veya maksimum argümanı tanımlanmamışsa, RANDARRAY varsayılan olarak sırasıyla 0 ve 1 değerlerini alır.
- Diğer rastgele işlevler gibi, Excel RANDARRAY uçucu yani çalışma sayfası her hesaplandığında rastgele değerlerden oluşan yeni bir liste oluşturur. Bunun olmasını önlemek için Excel'in Özel Yapıştır > Değerler özellik.
Temel Excel RANDARRAY formülü
Şimdi size en basit haliyle rastgele bir Excel formülü göstereyim.
Diyelim ki 5 satır ve 3 sütundan oluşan bir aralığı herhangi bir rastgele sayı ile doldurmak istiyorsunuz. Bunu yapmak için ilk iki argümanı bu şekilde ayarlayın:
- Sıralar sonuçları 5 satırda istediğimiz için 5'tir.
- Sütunlar sonuçları 3 sütunda istediğimiz için 3'tür.
Diğer tüm argümanları varsayılan değerlerinde bırakıyoruz ve aşağıdaki formülü elde ediyoruz:
=RANDARRAY(5, 3)
Hedef aralığın (bizim durumumuzda A2) sol üst hücresine girin, Enter tuşuna basın ve sonuçların belirtilen sayıda satır ve sütuna yayılmasını sağlayın.
Yukarıdaki ekran görüntüsünde görebileceğiniz gibi, bu temel RANDARRAY formülü aralığı 0'dan 1'e kadar rastgele ondalık sayılarla doldurur. Belirli bir aralıktaki tam sayıları almayı tercih ediyorsanız, son üç bağımsız değişkeni diğer örneklerde gösterildiği gibi yapılandırın.
Excel'de rastgele hale getirme - RANDARRAY formülü örnekleri
Aşağıda, Excel'deki tipik rastgeleleştirme senaryolarını kapsayan birkaç gelişmiş formül bulacaksınız.
İki sayı arasında rastgele sayı üretme
Belirli bir aralıkta rastgele sayılar listesi oluşturmak için, 3. bağımsız değişkene minimum değeri ve 4. bağımsız değişkene maksimum sayıyı girin. Tam sayı veya ondalık sayıya ihtiyacınız olup olmadığına bağlı olarak, 5. bağımsız değişkeni sırasıyla TRUE veya FALSE olarak ayarlayın.
Örnek olarak, 6 satır ve 4 sütundan oluşan bir aralığı 1'den 100'e kadar rastgele tamsayılarla dolduralım. Bunun için, RANDARRAY fonksiyonunun aşağıdaki argümanlarını ayarlayalım:
- Sıralar sonuçları 6 satırda istediğimiz için 6'dır.
- Sütunlar sonuçları 4 sütunda istediğimiz için 4'tür.
- Min 1'dir, bu da sahip olmak istediğimiz minimum değerdir.
- Maksimum 100'dür, bu da üretilecek maksimum değerdir.
- Whole_number DOĞRU'dur çünkü tam sayılara ihtiyacımız vardır.
Argümanları bir araya getirdiğimizde bu formülü elde ederiz:
=RANDARRAY(6, 4, 1, 100, TRUE)
Ve aşağıdaki sonucu üretir:
İki tarih arasında rastgele tarih oluştur
Excel'de rastgele bir tarih oluşturucu mu arıyorsunuz? RANDARRAY işlevi kolay bir çözümdür! Tek yapmanız gereken, önceden tanımlanmış hücrelere önceki tarihi (tarih 1) ve sonraki tarihi (tarih 2) girmek ve ardından formülünüzde bu hücrelere başvurmaktır:
RANDARRAY(rows, columns, tarih1 , tarih2 , TRUE)Bu örnek için, bu formülle D1 ve D2'deki tarihler arasında rastgele tarihlerin bir listesini oluşturduk:
=RANDARRAY(10, 1, D1, D2, TRUE)
Elbette, isterseniz min ve maks tarihlerini doğrudan formülde vermenizi engelleyen hiçbir şey yoktur. Yalnızca bunları Excel'in anlayabileceği biçimde girdiğinizden emin olun:
=RANDARRAY(10, 1, "1/1/2020", "12/31/2020", TRUE)
Hataları önlemek için, tarihleri girmek için TARİH işlevini kullanabilirsiniz:
=RANDARRAY(10, 1, DATE(2020,1,1), DATE(2020,12,31), TRUE)
Not: Excel dahili olarak tarihleri seri numarası olarak kaydeder, bu nedenle formül sonuçları büyük olasılıkla sayı olarak görüntülenecektir. Sonuçları doğru görüntülemek için Tarih biçimini dökülme aralığındaki tüm hücrelere aktarır.
Excel'de rastgele iş günleri oluşturma
Rastgele çalışma günleri üretmek için RANDARRAY işlevini WORKDAY'in ilk bağımsız değişkenine şu şekilde yerleştirin:
WORKDAY(RANDARRAY(rows, columns, tarih1 , tarih2 , TRUE), 1)RANDARRAY, WORKDAY işlevinin 1 iş günü ekleyeceği ve döndürülen tüm tarihlerin iş günü olmasını sağlayacağı rastgele başlangıç tarihlerinden oluşan bir dizi oluşturur.
D1'de tarih 1 ve D2'de tarih 2 ile, haftanın 10 gününden oluşan bir liste üretmek için formül aşağıda verilmiştir:
=IŞ GÜNÜ(RANDARRAY(10, 1, D1, D2, TRUE), 1)
Önceki örnekte olduğu gibi, lütfen dökülme aralığını şu şekilde biçimlendirmeyi unutmayın Tarih sonuçların doğru görüntülenmesi için.
Çiftler olmadan rastgele sayılar nasıl oluşturulur
Modern Excel 6 yeni dinamik dizi işlevi sunsa da, ne yazık ki, yinelemeler olmadan rastgele sayılar döndürmek için hala dahili bir işlev yoktur.
Kendinizinkini oluşturmak için benzersiz rastgele sayı üreteci Excel'de, aşağıda gösterildiği gibi birkaç işlevi birbirine zincirlemeniz gerekecektir.
Rastgele tam sayılar :
INDEX(UNIQUE(RANDARRAY( n *2, 1, min , maksimum , TRUE)), SEQUENCE( n ))Rastgele ondalıklar :
INDEX(UNIQUE(RANDARRAY( n *2, 1, min , maksimum , FALSE)), SEQUENCE( n ))Nerede?
- N kaç değer üretmek istediğinizi belirtir.
- Min en düşük değerdir.
- Maksimum en yüksek değerdir.
Örneğin, tekrarı olmayan 10 rastgele tam sayı üretmek için bu formülü kullanın:
=INDEX(UNIQUE(RANDARRAY(20, 1, 1, 100, TRUE)), SEQUENCE(10))
10 benzersiz listeden oluşan bir liste oluşturmak için rastgele ondalık sayılar RANDARRAY fonksiyonunun son argümanında TRUE değerini FALSE olarak değiştirin veya bu argümanı atlayın:
=INDEX(UNIQUE(RANDARRAY(20, 1, 1, 100, FALSE)), SEQUENCE(10))
İpuçları ve notlar:
- Formülün ayrıntılı açıklamasını Excel'de yinelemeler olmadan rastgele sayılar nasıl oluşturulur bölümünde bulabilirsiniz.
- Excel 2019 ve önceki sürümlerde RANDARRAY işlevi kullanılamaz. Bunun yerine, lütfen bu çözüme göz atın.
Excel'de rastgele sıralama nasıl yapılır
Excel'de verileri karıştırmak için "sort by" dizisi için RANDARRAY kullanın ( by_array ROWS fonksiyonu veri setinizdeki satır sayısını sayarak kaç tane rastgele sayı üretileceğini belirtir:
SORTBY( Veri , RANDARRAY(ROWS( Veri )))Bu yaklaşımla şunları yapabilirsiniz bir listeyi rastgele sıralama Excel'de sayı, tarih veya metin girişleri içerip içermediğine bakılmaksızın:
=SORTBY(A2:A13, RANDARRAY(ROWS(A2:A13)))
Ayrıca, şunları da yapabilirsiniz satırları karıştır verilerinizi karıştırmadan:
=SORTBY(A2:B10, RANDARRAY(ROWS(A2:B10)))
Excel'de rastgele bir seçim nasıl elde edilir
Bir listeden rastgele bir örnek çıkarmak için kullanabileceğiniz genel bir formül aşağıda verilmiştir:
İNDEKS( Veri , RANDARRAY( n , 1, 1, SATIRLAR( Veri ), TRUE))Nerede n ayıklamak istediğiniz rastgele girişlerin sayısıdır.
Örneğin, A2:A10'daki listeden rastgele 3 ad seçmek için şu formülü kullanın:
=INDEX(A2:A10, RANDARRAY(3, 1, 1, ROWS(A2:A10), TRUE))
Veya C2 gibi bir hücreye istenen örneklem boyutunu girin ve bu hücreye referans verin:
=INDEX(A2:A10, RANDARRAY(C2, 1, 1, ROWS(A2:A10), TRUE))
Bu formül nasıl çalışır?
Bu formülün özünde, C2'deki değerin kaç değer üretileceğini tanımladığı rastgele bir tamsayı dizisi oluşturan RANDARRAY işlevi yer alır. Minimum sayı sabit kodlanmıştır (1) ve maksimum sayı, ROWS işlevi tarafından döndürülen veri kümenizdeki satır sayısına karşılık gelir.
Rastgele tamsayılar dizisi doğrudan row_num INDEX fonksiyonunun argümanı, döndürülecek öğelerin konumlarını belirtir. Yukarıdaki ekran görüntüsündeki örnek için bu:
=INDEX(A2:A10, {8;7;4})
İpucu: Küçük bir veri setinden büyük bir örneklem seçerken, RANDARRAY'in yalnızca benzersiz sayılar üreteceğinin garantisi olmadığından, rastgele seçiminizin aynı girdinin birden fazla oluşumunu içerme olasılığı vardır. Bunun olmasını önlemek için, bu formülün kopyasız bir sürümünü kullanın.
Excel'de rastgele satırlar nasıl seçilir
Veri setiniz birden fazla sütun içeriyorsa, örneğe hangi sütunların dahil edileceğini belirtin. Bunun için, son bağımsız değişken için bir dizi sabiti sağlayın ( column_num ) INDEX fonksiyonunu şu şekilde kullanabilirsiniz:
=INDEX(A2:B10, RANDARRAY(D2, 1, 1, ROWS(A2:A10), TRUE), {1,2})
Burada A2:B10 kaynak veri ve D2 örneklem büyüklüğüdür.
Sonuç olarak, rastgele seçimimiz iki sütun veri içerecektir:
İpucu: Önceki örnekte olduğu gibi, bu formül yinelenen kayıtlar döndürebilir. Örneğinizde yineleme olmadığından emin olmak için, Yinelemesiz rastgele satırlar nasıl seçilir bölümünde açıklanan biraz farklı bir yaklaşım kullanın.
Excel'de sayıları ve metinleri rastgele atama
Excel'de rastgele atama yapmak için, RANDBETWEEN ile birlikte CHOOSE işlevini bu şekilde kullanın:
SEÇ(RANDARRAY(ROWS( Veri ), 1, 1, n , TRUE), değer1 , değer2 ,...)Nerede?
- Veri rastgele değerler atamak istediğiniz kaynak verilerinizin bir aralığıdır.
- N atanacak toplam değer sayısıdır.
- Değer1 , değer2 , değer3 vb. rastgele atanacak değerlerdir.
Örneğin, A2:A13'teki katılımcılara 1'den 3'e kadar sayılar atamak için bu formülü kullanın:
=CHOOSE(RANDARRAY(ROWS(A2:A13), 1, 1, 3, TRUE), 1, 2, 3)
Kolaylık sağlamak için, atanacak değerleri ayrı hücrelere, örneğin D2'den D4'e kadar girebilir ve formülünüzde bu hücrelere başvurabilirsiniz (aralık olarak değil, tek tek):
=CHOOSE(RANDARRAY(ROWS(A2:A13), 1, 1, 3, TRUE), D2, D3, D4)
Sonuç olarak, aynı formülle herhangi bir sayı, harf, metin, tarih ve saati rastgele atayabileceksiniz:
Not: RANDARRAY işlevi, çalışma sayfasındaki her değişiklikte yeni rastgele değerler üretmeye devam edecektir, sonuç olarak her seferinde yeni değerler atanacaktır. Atanan değerleri "düzeltmek" için, formülleri hesaplanan değerleriyle değiştirmek üzere Özel> Değerleri Yapıştır özelliklerini kullanın.
Bu formül nasıl çalışır?
Bu çözümün merkezinde yine RANDARRAY işlevi yer alır ve belirttiğiniz minimum ve maksimum sayılara göre (bizim durumumuzda 1'den 3'e kadar) rastgele tam sayılardan oluşan bir dizi üretir. ROWS işlevi RANDARRAY'e kaç tane rastgele sayı üreteceğini söyler. index_num CHOOSE fonksiyonunun argümanı. Örneğin:
=CHOOSE({1;2;1;2;3;2;3;3;1;3;1;2}, D2, D3, D4)
Index_num döndürülecek değerlerin konumlarını belirleyen argümandır. Konumlar rastgele olduğu için, D2:D4'teki değerler rastgele bir sırayla seçilir. Evet, bu kadar basit :)
Veriler gruplara rastgele nasıl atanır?
Göreviniz katılımcıları gruplara rastgele atamak olduğunda, yukarıdaki formül uygun olmayabilir çünkü belirli bir grubun kaç kez seçileceğini kontrol etmez. Örneğin, A grubuna 5 kişi atanırken C grubuna yalnızca 2 kişi atanabilir. eşit olarak Her grubun aynı sayıda katılımcıya sahip olması için farklı bir çözüme ihtiyacınız vardır.
İlk olarak, bu formülü kullanarak rastgele sayıların bir listesini oluşturursunuz:
=RANDARRAY(ROWS(A2:A13))
Burada A2:A13 kaynak verilerinizdir.
Ve sonra, bu genel formülü kullanarak grupları (veya başka herhangi bir şeyi) atarsınız:
İNDEKS( values_to_assign , ROUNDUP(RANK( first_random_number , random_numbers_range )/ n , 0))Nerede n grup büyüklüğüdür, yani her bir değerin kaç kez atanması gerektiğidir.
Örneğin, insanları E2:E5'te listelenen gruplara rastgele atamak için, her grupta 3 katılımcı olacak şekilde, bu formülü kullanın:
=INDEX($E$2:$E$5, ROUNDUP(RANK(B2,$B$2:$B$13)/3,0))
Lütfen bunun normal bir formül olduğuna dikkat edin (dinamik dizi formülü değil!), bu nedenle aralıkları yukarıdaki formülde olduğu gibi mutlak referanslarla kilitlemeniz gerekir.
Formülünüzü en üst hücreye (bizim durumumuzda C2) girin ve ardından gerektiği kadar hücreye sürükleyin. Sonuç şuna benzer görünecektir:
Lütfen RANDARRAY işlevinin geçici olduğunu unutmayın. Çalışma sayfasında bir şeyi her değiştirdiğinizde yeni rastgele değerler üretilmesini önlemek için, formülleri değerleriyle birlikte Özel Yapıştır özellik.
Bu formül nasıl çalışır?
Yardımcı sütundaki RANDARRAY formülü çok basittir ve açıklama gerektirmez, bu nedenle C sütunundaki formüle odaklanalım.
=INDEX($E$2:$E$5, ROUNDUP(RANK(B2,$B$2:$B$13)/3,0))
RANK fonksiyonu, B2'deki değeri B2:B13'teki rastgele sayılar dizisine göre sıralar. Sonuç, 1 ile toplam katılımcı sayısı (bizim durumumuzda 12) arasında bir sayıdır.
Sıralama grup boyutuna bölünür (örneğimizde 3) ve ROUNDUP işlevi bunu en yakın tam sayıya yuvarlar. Bu işlemin sonucu 1 ile toplam grup sayısı arasında bir sayıdır (bu örnekte 4).
Tamsayı şu adrese gider row_num bağımsız değişkenini kullanarak, atanan grubu temsil eden E2:E5 aralığındaki ilgili satırdan bir değer döndürmeye zorlar.
Excel RANDARRAY işlevi çalışmıyor
RANDARRAY formülünüz bir hata döndürdüğünde, kontrol etmeniz gereken en belirgin nedenler bunlardır:
#SPILL hatası
Diğer dinamik dizi işlevlerinde olduğu gibi, #SPILL! hatası çoğu zaman amaçlanan dökülme aralığında tüm sonuçları görüntülemek için yeterli alan olmadığı anlamına gelir. Bu aralıktaki tüm hücreleri temizlediğinizde formülünüz otomatik olarak yeniden hesaplanacaktır. Daha fazla bilgi için lütfen Excel #SPILL hatası - nedenleri ve düzeltmeleri bölümüne bakın.
#DEĞER hatası
Bu durumlarda bir #VALUE! hatası oluşabilir:
- Eğer bir maksimum değerinin bir min değer.
- Bağımsız değişkenlerden herhangi biri sayısal değilse.
#HATA ADI
Çoğu durumda, #NAME! hatası aşağıdakilerden birini gösterir:
- İşlevin adı yanlış yazılmıştır.
- Bu işlev Excel sürümünüzde mevcut değildir.
#CALC! hatası
Eğer bir #CALC! hatası oluşursa sıralar veya sütunlar bağımsız değişkeni 1'den küçükse veya boş bir hücreyi ifade ediyorsa.
Yeni RANDARRAY işlevi ile Excel'de rastgele sayı üreteci nasıl oluşturulur. Okuduğunuz için teşekkür eder, gelecek hafta blogumuzda görüşmek dileğiyle!
İndirmek için pratik çalışma kitabı
RANDARRAY formül örnekleri (.xlsx dosyası)