mustafa1205
Altın Üye
- Katılım
- 23 Ekim 2010
- Mesajlar
- 1,437
- Excel Vers. ve Dili
- Office 2016 / 64 Bit - Türkçe
DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
[B][COLOR="red"]Private Sub Worksheet_Change(ByVal Target As Range)[/COLOR][/B]
If Intersect(Target, [[B][COLOR="Blue"][SIZE="3"]AH3:AJ3[/SIZE][/COLOR][/B]]) Is Nothing Then Exit Sub
Call LIMIT
[B][COLOR="red"]End Sub
Sub LIMIT()[/COLOR][/B]
alt = [AH3]: ust = [AI3]: hedef = [AJ3]
If ust * 30 < hedef Then
MsgBox "Tüm değerler üst limit olarak verilse bile;" & vbLf & _
"hedef değere ulaşılamaz!..." & vbLf & vbLf & _
"Üst limiti artırarak tekrar deneyiniz.", vbCritical
Exit Sub
End If
fark = Abs(Int((hedef - 30 * alt) / (30 * ust - hedef)))
If hedef - 30 * alt > 30 * ust - hedef Then alt = alt + fark
10
For sut = 3 To 32
Cells(3, sut) = WorksheetFunction.RandBetween(alt, ust)
Next
topl = WorksheetFunction.Sum([C3:AF3])
If topl <> hedef Then GoTo 10
MsgBox "BİTTİ", vbInformation, "..::.. Ömer BARAN ..::.."
[B][COLOR="Red"]End Sub[/COLOR][/B]