• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

YUVARLA ??

Katılım
16 Nisan 2005
Mesajlar
353
Selam arkadaşlar

sayıların toplamını (1-5) arasında rastgele yuvarlamak olabilirmi ??

Ã?R:
9,50 +4,70 =14,30
2,5 + 0 = 2,80
4,5 + 4,00 = 8,60
4,80 + 0 = 5,20

ve
ve
 
İyi de sayın nihatjeoloji,

2,5'i 2,8'e nasıl yuvarladınız?Benim bildiğim sayı 2,55 ise 2,3'e yuvarlanır ama siz yuvarlamamış silindir gibi ezmişsiniz.Gerçi matematik bilgim pek iyi değildir ama yanlış biliyorsam BİRİ BENİ UYARSIN :hihoho: :hihoho:
 
sevgili bedersu

pardon zannetim gören hemen anlar topama sonucu yuvarlanmış...

yukarıda verdiğim örnekte rastgele yuvarlanmış hali :D

tekrar yazıyorum
Ã?R:
9,50 +4,70 =14,20-------------14,30 rastgele yuvarlansın
2,5 + 0 = 2,5-------------------2,70 rastgele yuvarlansın
4,5 + 4,00 = 8,50 ......
4,80 + 0 = 5,80 .........
 
Sanırım toplama sonucuna 0,1 - 0,5 arasındaki değerlerden rasgele ekleme yapılmasını istiyorsunuz.
 
merhaba sayın nihatjeoloji;

Aşağıdaki kodlarda A1 hücresine yazdığınız değere 0,1 ile 0,5 arasında rastgele değerler eklenmektedir.Buradan yola çıkarak istediğinizi yapabilirsiniz sanırım:

Sub ekle()

a = Int(5 * Rnd)
If a = 0 Then End
a = "0," & a
[a1] = [a1] + a

End Sub
 
syn bedersu

pardon kusura bakmayın galiba ben yanlış anlatın..

tekrar örnek vereceğim

B1=5,70 ise
C1=0 ise
A1=[=TOPLA(B1:C1)] Demişim ve sonuç (5,70)

ve

B2=3,20 ise
C2=4,00 ise
A2=[=TOPLA(B2:C2)] Demişim ve sonuç (7,20)

ve
A3
A4
.....
....
....

işte bu şekilde toplama sonuçları yuvarlansın (1-5)arasında
 
sayın nihatjeoloji,

Bu 1 ve 5 'ten kastınız A1 'den A5 ' e kadar olan hücre aralığı mı?Yani bu aralıktaki toplamları mı yuvarlamak istiyorsunuz?Eğer öyleyse aşağıdaki kodları deneyin.bu da olmadıysa Vallaha anlamadım :(

Sub yuvarla()
For i = 1 To 5
Range("A" & i) = Round((Range("B" & i)) + (Range("C" & i)), 2)
Next
End Sub
 
syn bedersu bu konu ile ilgilendiğiniz için teşekkür ederim

hayır hayır

1-5 arasında yani

1'nci tolama işleminde

B1=5,70 ise
C1=0 ise
A1=[=TOPLA(B1:C1)] Demişim ve sonuç (5,70) ise

bu sonuça ya(+0,3) eklensin veya (+0,4) eklensin yada (+0,5) eklensin. yani excel bunu otomatik olarak yapsın

sonuç olarak verdeğim örnekte sonuç (6,10) olabilir veya (5,90) olabilir......ve ve yani excel bunu otomatik olarak yapabilirmi





ayrı yarı yuvarlansın
 
Tamam şimdi oldu.Aslında aşağıda yazdığım kodlara bakınca ne kadar basit olduğunu anlayacaksınız.İlk mesajımla son mesajımı birleştirdim sadece.Bir inceleyin.

Sub yuvarla()
For i = 1 To 5

a = Int(5 * Rnd)
If a = 0 Then a = 1
a = "0," & a

Range("A" & i) = Range("B" & i) + Range("C" & i) + a
Next i

End Sub
 
syn bedersu
çok çok sağolun

evet bu fakat ufak bir not sonuçlanması için makro çalıştır tıklıyorum sonuçlanıyor. ama hemen sonuç vermesi için ne yapmam lazım.
 
Merhaba

Sayfanın kod kısmına lopyalayın
Sn.Bedersu'nun kodları çalışacaktır.

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Address = "$B$1" Or Target.Address = "$C$1" Then yuvarla

End Sub

Yanlız buarada a1'den a5 kadar yapılmış, b ve c ye sayı girdikten sonra ,yani en son c5 sayı girdiğinizde kod çalışması daha normal değilmi eğer öyle düşünürseniz

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Address = "$C$5" Then yuvarla

End Sub
 
merhaba,

Sayın zafer'in kodlarını da kullanarak:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
For i = 1 To 5
If Target.Address = "$B$" & i Or Target.Address = "$C$" & i Then
a = Int(5 * Rnd)
If a = 0 Then a = 1
a = "0," & a

Range("A" & i) = Range("B" & i) + Range("C" & i) + a
End If


Next i
End Sub

Sanırım bu şekilde daha iyi olur.
 
Elhamdülillah.Vallaha sizden çok sevindim sayın nihatjeoloji;çünkü artık bende mi bir problem var,ben mi anlamıyorum demeye başlamıştım.Ama Hatice'ye değil neticeye bakmak lazım değil mi?Çok şükür bunu da hallettik hep beraber.
 
:hey: :arkadas:
 
Geri
Üst