İçindekiler
Bu makalede, Excel'de sayıları tekrarlamadan rastgele hale getirmek için birkaç farklı formülü tartışacağız. Ayrıca, size rastgele sayıların, tarihlerin ve dizelerin tekrarlanmayan bir listesini üretebilen evrensel bir Rastgele Oluşturucu göstereceğiz.
Muhtemelen bildiğiniz gibi Microsoft Excel, RAND, RANDBETWEEN ve RANDARRAY gibi rastgele sayılar üretmek için çeşitli işlevlere sahiptir. Ancak, herhangi bir işlevin sonucunun kopyasız olacağının garantisi yoktur.
Bu eğitimde, benzersiz rastgele sayıların bir listesini oluşturmak için birkaç formül açıklanmaktadır. Lütfen bazı formüllerin yalnızca Excel 365 ve 2021'in en son sürümünde çalıştığına, diğerlerinin ise Excel 2019, Excel 2016, Excel 2013 ve önceki sürümlerinde kullanılabileceğine dikkat edin.
Önceden tanımlanmış adımla benzersiz rastgele sayıların bir listesini alın
Yalnızca dinamik dizileri destekleyen Excel 365 ve Excel 2021'de çalışır.
En son Excel sürümüne sahipseniz, en kolay yol benzersiz rastgele sayıların listesi 3 yeni dinamik dizi fonksiyonunu birleştirmektir: SORTBY, SEQUENCE ve RANDARRAY:
SORTBY(SEQUENCE( n ), RANDARRAY( n ))Nerede n almak istediğiniz rastgele değerlerin sayısıdır.
Örneğin, 5 rastgele sayıdan oluşan bir liste oluşturmak için n :
=SORTBY(SEQUENCE(5), RANDARRAY(5))
Formülü en üstteki hücreye girin, Enter tuşuna basın ve sonuçlar otomatik olarak belirtilen sayıda hücreye yayılacaktır.
Aşağıdaki ekran görüntüsünde de görebileceğiniz gibi, bu formül aslında 1'den 5'e kadar sayıları rastgele sıralar Tekrarları olmayan klasik bir rastgele sayı üretecine ihtiyacınız varsa, lütfen aşağıdaki diğer örneklere göz atın.
Yukarıdaki formülde, yalnızca kaç satırın doldurulacağını tanımlarsınız. Diğer tüm bağımsız değişkenler varsayılan değerlerine bırakılır, yani liste 1'den başlar ve 1 ile artırılır. Farklı bir ilk sayı ve artış istiyorsanız, 3. için kendi değerlerinizi ayarlayın ( başla ) ve 4. ( adım ) SEQUENCE fonksiyonunun argümanları.
Örneğin, 100'den başlayıp 10 artırmak için şu formülü kullanın:
=SORTBY(SEQUENCE(5, , 100, 10), RANDARRAY(5))
Bu formül nasıl çalışır?
İçten dışa doğru çalışarak, işte formülün yaptığı şey:
- SEQUENCE fonksiyonu, belirtilen veya varsayılan başlangıç değerine ve artan adım boyutuna göre sıralı sayılardan oluşan bir dizi oluşturur. dizi SORTBY argümanı.
- RANDARRAY işlevi, diziyle aynı boyutta rastgele sayılardan oluşan bir dizi oluşturur (bizim durumumuzda 5 satır, 1 sütun). Min ve maks değerinin gerçekten bir önemi yoktur, bu nedenle bunları varsayılan olarak bırakabiliriz. by_array SORTBY argümanı.
- SORTBY işlevi, SEQUENCE tarafından üretilen sıralı sayıları, RANDARRAY tarafından üretilen bir rasgele sayı dizisi kullanarak sıralar.
Lütfen bu basit formülün tekrar etmeyen rastgele sayıların bir listesini oluşturduğunu unutmayın. önceden tanımlanmış adım Bu sınırlamayı aşmak için aşağıda açıklanan formülün gelişmiş bir versiyonunu kullanın.
Yinelenmeyen rastgele sayıların bir listesini oluşturun
Yalnızca dinamik dizileri destekleyen Excel 365 ve Excel 2021'de çalışır.
Excel'de yinelemeler olmadan rastgele sayılar oluşturmak için aşağıdaki genel formüllerden birini kullanın.
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 üretilecek değer sayısıdır.
- Min minimum değerdir.
- Maksimum maksimum değerdir.
Örneğin, 5 kişilik bir liste oluşturmak için rastgele tamsayılar 1'den 100'e kadar tekrar olmadan, bu formülü kullanın:
=INDEX(UNIQUE(RANDARRAY(5^2, 1, 1, 100, TRUE)), SEQUENCE(5))
5 benzersiz rastgele oluşturmak için ondalık sayılar RANDARRAY öğesinin son bağımsız değişkenine FALSE değerini girin veya bu bağımsız değişkeni atlayın:
=INDEX(UNIQUE(RANDARRAY(5^2, 1, 1, 100)), SEQUENCE(5))
Bu formül nasıl çalışır?
Formül ilk bakışta biraz zor görünebilir, ancak daha yakından bakıldığında mantığı çok basittir:
- RANDARRAY işlevi, belirttiğiniz minimum ve maksimum değerlere göre rastgele sayılardan oluşan bir dizi oluşturur. Kaç değer üretileceğini belirlemek için, istenen benzersiz sayısını 2'nin kuvvetine yükseltirsiniz. Ortaya çıkan dizinin kaç tane kopyası olduğunu kimse bilemeyeceğinden, UNIQUE'ın aralarından seçim yapabileceği yeterli bir değer dizisi sağlamanız gerekir. Bu örnekte, yalnızca 5 benzersiz sayıya ihtiyacımız varancak RANDARRAY'e 25 (5^2) sayı üretmesi talimatını veriyoruz.
- UNIQUE işlevi tüm kopyaları kaldırır ve INDEX'e kopyasız bir dizi "besler".
- UNIQUE tarafından aktarılan diziden INDEX işlevi ilk n SEQUENCE tarafından belirtilen değerler (bizim durumumuzda 5 sayı). Değerler zaten rastgele sırada olduğundan, hangilerinin hayatta kaldığı gerçekten önemli değildir.
Not: Çok büyük dizilerde, bu formül biraz yavaş olabilir. Örneğin, nihai sonuç olarak 1.000 benzersiz sayıdan oluşan bir liste elde etmek için, RANDARRAY'in dahili olarak 1.000.000 rastgele sayı (1000^2) dizisi oluşturması gerekir. Bu gibi durumlarda, güce yükseltmek yerine, aşağıdakileri çarpabilirsiniz n UNIQUE işlevine ne kadar küçük bir dizi aktarılırsa (istenen benzersiz rastgele değer sayısına göre küçük), dökülen aralıktaki tüm hücrelerin sonuçlarla doldurulmama olasılığının o kadar büyük olacağını unutmayın.
Excel'de tekrar etmeyen rastgele sayılar aralığı oluşturma
Yalnızca dinamik dizileri destekleyen Excel 365 ve Excel 2021'de çalışır.
Tekrarı olmayan bir dizi rastgele sayı oluşturmak için bu formülü kullanabilirsiniz:
INDEX(UNIQUE(RANDARRAY( n ^2, 1, min , maksimum )), SEQUENCE( sıralar , sütunlar ))Nerede?
- n Manuel hesaplamalardan kaçınmak için, bunu (satır sayısı * sütun sayısı) olarak sağlayabilirsiniz. Örneğin, 10 satır ve 5 sütunu doldurmak için 50^2 veya (10*5)^2 kullanın.
- Sıralar doldurulacak satır sayısıdır.
- Sütunlar doldurulacak sütun sayısıdır.
- Min en düşük değerdir.
- Maksimum en yüksek değerdir.
Fark edebileceğiniz gibi, formül temelde önceki örnektekiyle aynıdır. Tek fark, bu durumda hem satır hem de sütun sayısını tanımlayan SEQUENCE işlevidir.
Örneğin, 10 satır ve 3 sütundan oluşan bir aralığı 1'den 100'e kadar benzersiz rastgele sayılarla doldurmak için bu formülü kullanın:
=INDEX(UNIQUE(RANDARRAY(30^2, 1, 1, 100)), SEQUENCE(10, 3))
Ve tekrar eden sayılar olmadan rastgele ondalıklardan oluşan bir dizi üretecektir:
Tam sayılara ihtiyacınız varsa, RANDARRAY'in son bağımsız değişkenini TRUE olarak ayarlayın:
=INDEX(UNIQUE(RANDARRAY(30^2, 1, 1, 100, TRUE)), SEQUENCE(10,3))
Excel 2019, 2016 ve önceki sürümlerde benzersiz rastgele sayılar nasıl oluşturulur?
Excel 365 ve 2021 dışındaki hiçbir sürüm dinamik dizileri desteklemediğinden, yukarıdaki çözümlerin hiçbiri Excel'in önceki sürümlerinde çalışmaz. Ancak, bu hiçbir çözüm olmadığı anlamına gelmez, sadece birkaç adım daha gerçekleştirmeniz gerekir:
- Rastgele sayılardan oluşan bir liste oluşturun. İhtiyaçlarınıza göre ikisinden birini kullanın:
- RAND işlevi 0 ile 1 arasında rastgele ondalık sayılar üretmek için veya
- RANDBETWEEN işlevi, belirttiğiniz aralıkta rastgele tamsayılar üretir.
Gerçekten ihtiyacınız olandan daha fazla değer ürettiğinizden emin olun çünkü bazıları mükerrer olacaktır ve bunları daha sonra sileceksiniz.
Bu örnek için, aşağıdaki formülü kullanarak 1 ile 20 arasında 10 rastgele tamsayıdan oluşan bir liste oluşturuyoruz:
=RANDBETWEEN(1,20)
Formülü tek seferde birden fazla hücreye girmek için, tüm hücreleri seçin (örneğimizde A2:A15), formülü formül çubuğuna yazın ve Ctrl + Enter tuşlarına basın. Veya formülü her zamanki gibi ilk hücreye girebilir ve ardından gerektiği kadar hücreye sürükleyebilirsiniz.
Her neyse, sonuç şöyle bir şeye benzeyecektir:
Fark edebileceğiniz gibi, formülü 14 hücreye girdik, ancak sonuçta yalnızca 10 benzersiz rastgele sayıya ihtiyacımız var.
- Formülleri değerlere değiştirin. Hem RAND hem de RANDBETWEEN çalışma sayfasındaki her değişiklikte yeniden hesaplandığından, rastgele sayılar listeniz sürekli değişecektir. Bunun olmasını önlemek için Özel Yapıştır> Değerler Rastgele sayıların yeniden hesaplanmasını durdurma bölümünde açıklandığı gibi formülleri değerlere dönüştürmek için.
Doğru yaptığınızdan emin olmak için herhangi bir sayıyı seçin ve formül çubuğuna bakın. Artık bir formül değil, bir değer göstermelidir:
- Yinelenenleri sil. Bunu yapmak için, tüm numaraları seçin ve Veri tab> Veri araçları grubunu seçin ve Kopyaları Kaldır . içinde Kopyaları Kaldır iletişim kutusu görüntülenir, hiçbir şeyi değiştirmeden Tamam'a tıklamanız yeterlidir. Ayrıntılı adımlar için lütfen Excel'de yinelenenleri kaldırma bölümüne bakın.
Bitti! Tüm kopyalar gitti ve artık fazla numaraları silebilirsiniz.
İpucu: Excel'in yerleşik aracı yerine, Excel için gelişmiş Yineleme Gidericimizi kullanabilirsiniz.
Rastgele sayıların değişmesi nasıl engellenir
RAND, RANDBETWEEN ve RANDARRAY dahil olmak üzere Excel'deki tüm rastgeleleştirme işlevleri uçucudur, yani elektronik tablo her değiştirildiğinde yeniden hesaplanırlar. Sonuç olarak, her değişiklikte yeni rastgele değerler üretilir. Otomatik olarak yeni sayılar üretilmesini önlemek için, formülleri statik değerlerle değiştirmek üzere Özel> Değerleri Yapıştır özelliğini kullanın. İşte nasıl yapılacağı:
- Rastgele formülünüzü içeren tüm hücreleri seçin ve kopyalamak için Ctrl + C tuşlarına basın.
- Seçili aralığa sağ tıklayın ve Özel Yapıştır > Değerler Alternatif olarak, Shift + F10 tuşlarına ve ardından bu seçeneğin kısayolu olan V tuşuna basabilirsiniz.
Ayrıntılı adımlar için lütfen Excel'de formülleri değerlere dönüştürme bölümüne bakın.
Excel için tekrarsız rastgele sayı üreteci
Ultimate Suite'imizin kullanıcıları yukarıdaki çözümlerden hiçbirine ihtiyaç duymazlar çünkü Excel'lerinde zaten evrensel bir Rastgele Oluşturucu vardır. Bu araç, tekrar etmeyen tam sayılar, ondalık sayılar, tarihler ve benzersiz parolaların bir listesini kolayca üretebilir. İşte nasıl yapılacağı:
- Üzerinde Ablebits Araçları sekmesine tıklayın, ardından Rastgele > Rastgele Jeneratör .
- Rastgele sayılarla doldurulacak aralığı seçin.
- Üzerinde Rastgele Jeneratör bölmesinde, aşağıdakileri yapın:
- İstediğiniz değer türünü seçin: tamsayı, gerçek sayı, tarih, Boolean, özel liste veya dize (güçlü benzersiz parolalar oluşturmak için ideal!).
- Ayarlamak Kimden ve için değerler.
- Seçiniz Benzersiz değerler onay kutusu.
- Tıklayın Oluşturmak .
İşte bu! Seçilen aralık bir kerede tekrar etmeyen rastgele sayılarla doldurulur:
Bu aracı denemek ve Ultimate Suite'imizde bulunan diğer büyüleyici özellikleri keşfetmek istiyorsanız, deneme sürümünü indirebilirsiniz.
Excel'de yinelemeler olmadan sayıları rastgele hale getirmenin yolu budur. Okuduğunuz için teşekkür ediyor ve gelecek hafta blogumuzda görüşmeyi umuyorum!
İndirmek için pratik çalışma kitabı
Excel'de (.xlsx dosyası) benzersiz rastgele sayılar oluşturma