Rastgele Ara

09/07/2024, 13:31

adnan

Merhaba,
Ek örnek Excel dosyasında beş sütunda veriler var . j3, K3,L3,M3 ve N3 hücrelerine formülle rastgele veri getiriyor.
Kullanımı daha kolay hale getirmek için Vba kodu oluşturulabilir mi?
Teşekkür ederim.
Sayılarımla.
09/07/2024, 16:26

atoykan

Merhaba Sayın @adnan

Excel dosyanızda J3:N3 aralığındaki formülleri sildikten sonra Vba Editörü açın ve bir modül ekleyerek aşağıdaki kodu yapıştırın:

Sub RandomValues()
Dim rng As Range
Dim rndrw As Long
Dim CellAdr As Variant
Dim i As Integer

CellAdr = Array("J3", "K3", "L3", "M3", "N3")
For i = 0 To UBound(CellAdr)
If i < 3 Then
Set rng = ThisWorkbook.Sheets("Sayfa1").Range("C2").Offset(0, i).Resize(7, 1)
Else
Set rng = ThisWorkbook.Sheets("Sayfa1").Range("F1:F5")
End If
rndrw = Application.WorksheetFunction.RandBetween(1, rng.Rows.Count)
ThisWorkbook.Sheets("Sayfa1").Range(CellAdr(i)).Value = rng.Cells(rndrw, 1).Value
Next i
End Sub

Çalışma sayfanıza bir buton ekleyerek RandomValues makrosunu atayın. Tıkladığınızda J3:N3 aralığındaki hücrelere formülünüzdeki gibi random değerler atayacaktır.

Kod işleyiş olarak CellAdr ile J3:N3 aralığını dizi olarak saklar ve her hücre için döngüde uygun aralığı belirleyerek rastgele bir satır değerini sonuç olarak hedef hücreye işler.
09/07/2024, 16:42

adnan

Merhaba,
Sayın atoykan
Çok Teşekkür ederim.
Saygılarımla.