DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
Sub DAĞIT()
Dim k As Byte
10
Range("C:C").ClearContents
son = [B65536].End(3).Row
k = 0
20
a = WorksheetFunction.RandBetween(Cells(1, 6), Cells(7, 6))
k = k + 1
Cells(k, 3) = Cells(a, 7)
If WorksheetFunction.CountIf(Range("C1:C" & k), Cells(k, 3)) > [B][COLOR="Red"]9[/COLOR][/B] Then GoTo 10
If k < son Then GoTo 20
End Sub
Sayın muygun'un dosyasına bakınca fark ettim ki; 20 satıra veri dağıtmak istemişsiniz, ben 50 satıra da dağıtılacak diye düşünmüştüm.
Sub DAĞIT()
Dim k As Byte
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
10
Range("X:X").ClearContents
son = [W65536].End(3).Row
k = 0
20
a = WorksheetFunction.RandBetween(Cells(1, 27), Cells(7, 27))
k = k + 1
Cells(k, 24) = Cells(a, 28)
If k < son Then GoTo 20
For a = 1 To 7
Cells(a, 29) = WorksheetFunction.CountIf(Range("X1:X" & son), Cells(a, 28))
Next
If WorksheetFunction.Min(Range("AC1:AC7")) < [B][COLOR="red"]5[/COLOR][/B] Or WorksheetFunction.Max(Range("AC1:AC7")) > [B][COLOR="Red"]9[/COLOR][/B] Then GoTo 10
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub
Teşekkürler Ömer Bey; sağlcakla kal....
Dosyanızda çalışan kod göremedim, kod içeren dosyayı yükler misiniz?
[B]Private Sub Worksheet_Change(ByVal Target As Range)[/B]
If Intersect(Target, Range("[B][COLOR="Red"]AA1, AA2[/COLOR][/B]")) Is Nothing Then Exit Sub
Call rastgeletamsayı
[B]End Sub[/B]
Merhaba, yanlış anlamadıysam; belge açıkken alt taraftan sayfa adına sağ tıklayıp
KOD GÖRÜNTÜLEyi seçin ve açılan ekranda sağ tarafta kendi kodlarınızı görürsünüz, o kodların üstüne aşağıdaki
kod blokunu ekleyin, ayrıca kendi kodlarınızdaki kırmızı yeri aşağıdaki a =WorksheetFunction.... satırındaki
19 sayısını 2 olarak değiştirdikten sonra, AA1 ve AA2 hücrelerinde değişiklik yapınca kod otomatik olarak çalışacaktır.Kod:[B]Private Sub Worksheet_Change(ByVal Target As Range)[/B] If Intersect(Target, Range("[B][COLOR="Red"]AA1, AA2[/COLOR][/B]")) Is Nothing Then Exit Sub Call rastgeletamsayı [B]End Sub[/B]
Yukarıdaki cevabımda tam anlatamadım demekki. 19 sayısını 2 olarak değiştirin ve mevcut kodlarınızın üstüne bir önceki cevapta yer alan kod'u aynen yapıştırın.20
a = WorksheetFunction.RandBetween(Cells(1, 27), Cells(19, 27))