Excel VBA ile Rastgele Sayı Üretme

Excel VBA ile Rastgele Sayı Üretme
Excel VBA Rastgele Sayı Üretme

1. Örnek Veri Tablosu

Aşağıdaki tabloda 3 farklı senaryo için rastgele sayı üretme ihtiyacımız var.

# Senaryo Açıklama
1 🎲 Olasılık Tahmini 0 ile 1 arası ondalık
2 📊 Rastgele Not 1 ile 100 arası tam sayı
3 💰 Rastgele Fiyat 10 ile 50 arası ondalık
3 farklı senaryo için rastgele sayı üreteceğiz

Tablo Bilgisi

3 senaryo: Olasılık Tahmini (0-1), Rastgele Not (1-100), Rastgele Fiyat (10-50).

2. Yöntem 1: Rnd ile Rastgele Ondalık Sayı (0-1)

Rnd fonksiyonu 0 ile 1 arasında rastgele ondalık sayı üretir. Tablodaki ilk senaryoyu (Olasılık Tahmini) dolduralım.

Sub RndIleDoldur()
    Range("C2").Value = Rnd()
End Sub

Kod Açıklaması

  • Range("C2").Value → C2 hücresine yaz
  • Rnd() → 0-1 arası ondalık sayı üretir

Tablo Rnd() ile dolduruldu:

# Senaryo Değer
1 🎲 Olasılık Tahmini 🟩 0,723
2 📊 Rastgele Not (boş)
3 💰 Rastgele Fiyat (boş)
🟩 Olasılık Tahmini senaryosu Rnd() ile dolduruldu

3. Yöntem 2: Int + Rnd ile 1-100 Arası Tam Sayı

Int ile Rnd'yi birleştirerek 1-100 arası rastgele tam sayı üretiriz. Tablodaki ikinci senaryoyu (Rastgele Not) dolduralım.

Sub IntIleDoldur()
    Randomize
    Range("C3").Value = Int(100 * Rnd() + 1)
End Sub

Kod Açıklaması

  • Randomize → Her seferinde farklı sayı gelsin
  • Range("C3").Value → C3 hücresine yaz
  • Int(100 * Rnd() + 1) → 1-100 arası tam sayı

Tablo Int ile dolduruldu:

# Senaryo Değer
1 🎲 Olasılık Tahmini 🟩 0,723
2 📊 Rastgele Not 🔵 85
3 💰 Rastgele Fiyat (boş)
🔵 Rastgele Not senaryosu Int(100 * Rnd + 1) ile dolduruldu

4. VBA Makroları için Ön Hazırlık

1. Geliştirici Sekmesini Aktifleştirin

Excel'de VBA kodlarını yazabilmek için önce Geliştirici sekmesini aktif etmelisiniz. Detaylı bilgi için tıklayın.

VBA - Geliştirici sekmesi
⚙️ Geliştirici sekmesini aktifleştirme

3. Modül Ekleyin

Kodlarınızı yazmak için bir Modül eklemelisiniz. Makro yazma rehberi için tıklayın.

VBA - Modül ekleme
📝 Modül ekleme

2. Visual Basic Düzenleyici'yi Açın

Alt + F11 (Windows) veya Option + F11 (Mac) ile hızlıca açabilirsiniz.

Visual Basic Düzenleyici'yi Açma
📝 Visual Basic Düzenleyici'yi Açma

4. Kodu Çalıştırın

Yazdığınız kodu çalıştırmak için F5 tuşuna basın veya Çalıştır butonuna tıklayın. VBA makro nedir? öğrenmek için tıklayın.

F5

▶️ Makroyu çalıştır

📋 Makro çalıştırma

5. Sıkça Sorulan Sorular

01 VBA'da rastgele sayı nasıl üretilir?

Rnd() ile 0-1 arası ondalık sayı üretilir. Tam sayı için Int(100 * Rnd + 1) kullanılır.

02 Neden her seferinde aynı sayı geliyor?

Randomize eklemediğiniz için. Başlangıçta Randomize yazarak her seferinde farklı sayı alabilirsiniz.

03 10 ile 50 arası rastgele sayı nasıl üretilir?

Int(41 * Rnd + 10) formülü ile 10-50 arası sayı üretilir.

04 Rnd ile Randomize arasındaki fark nedir?

Rnd sayı üretir, Randomize tohumu değiştirir. Randomize olmadan hep aynı sayılar gelir.

05 Int fonksiyonu ne işe yarar?

Int, ondalık sayının tam sayı kısmını alır. Örneğin Int(3.7) = 3.

06 Mac'te VBA rastgele sayı çalışır mı?

Evet, Mac'te de aynı kodlar çalışır. Option+F11 ile VBA'ya erişin.

💡 İpucu: Makroları çalıştırmadan önce dosyanızı yedeklemeyi unutmayın. Ctrl+S ile kaydedin.
🤖 Akıllı Arama Asistanı
💬 Merhaba! Size nasıl yardımcı olabilirim?
Excel Asistanı
👋 Merhaba! Excel ile ilgili ne öğrenmek istersin? Örn: DÜŞEYARA nasıl kullanılır?
DÜŞEYARA Pivot Tablo Gantt Şeması