• DİKKAT

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

Programım calışmıyor neden kaynaklı sizce ?

Katılım
31 Mart 2010
Mesajlar
184
Excel Vers. ve Dili
excel 2010/2013
Sub deneme()

Dim donemliktalep(5) As Variant
Dim numcustomer As Integer


Worksheets("Sayfa1").Activate
Range("A1").Select

ActiveCell.Offset(2, 0).Select

For i = 1 To 5

donemliktalep(i) = donemliktalep(i) + Int(Rnd * 11) + 20
If i + 1 <= Numperiod Then donemliktalep(i + 1) = donemliktalep(i + 1) + Int(Rnd * 11) + 15
If i + 2 <= Numperiod Then donemliktalep(i + 2) = donemliktalep(i + 2) + Int(Rnd * 11) + 10
If i + 3 <= Numperiod Then donemliktalep(i + 3) = donemliktalep(i + 3) + Int(Rnd * 11) + 5

Next i

End Sub
 
Çalışmıyor derken kastettiğiniz nedir? Bu kodların ne yapmasını istiyorsunuz?
 
bu kodu bır makro olarak kaydettım ve sırayla, activecell.Offset(1,0) ve devamına rassal olarak deger atamasını istıyorum.
 
Sub deneme()

Dim donemliktalep(5) As Variant
Dim numcustomer As Integer
Worksheets("Sayfa1").Activate
Range("A1").Select

ActiveCell.Offset(2, 0).Select

For i = 1 To 5
donemliktalep(i) = donemliktalep(i) + Int(Rnd * 11) + 20
If i + 1 <= Numperiod Then donemliktalep(i + 1) = donemliktalep(i + 1) + Int(Rnd * 11) + 15
If i + 2 <= Numperiod Then donemliktalep(i + 2) = donemliktalep(i + 2) + Int(Rnd * 11) + 10
If i + 3 <= Numperiod Then donemliktalep(i + 3) = donemliktalep(i + 3) + Int(Rnd * 11) + 5
Next i
End Sub

Merhaba
"A" sütununa almak için kodlardaki kırmızı bölümü ekleyiniz,

If i + 3 <= Numperiod
"Numperiod" tanımlanmadığı için boş görünecektir, yani olmasının bir manası görünmüyor.

Kod:
Dim donemliktalep(5) As Variant
Dim numcustomer As Integer

Worksheets("Sayfa1").Activate
Range("A1").Select

ActiveCell.Offset(2, 0).Select
For i = 1 To 5
donemliktalep(i) = donemliktalep(i) + Int(Rnd * 11) + 20
If i + 1 <= Numperiod Then donemliktalep(i + 1) = donemliktalep(i + 1) + Int(Rnd * 11) + 15
If i + 2 <= Numperiod Then donemliktalep(i + 2) = donemliktalep(i + 2) + Int(Rnd * 11) + 10
If i + 3 <= Numperiod Then donemliktalep(i + 3) = donemliktalep(i + 3) + Int(Rnd * 11) + 5
[COLOR="Red"]ActiveCell.Offset(i, 0) = donemliktalep(i)[/COLOR]
Next i
"Dim donemliktalep(5) As Variant" ile dizi 6 adet değer alabilir, "For i" döngüsünü "0" dan başlatabilirsiniz,
Kod:
ActiveCell.Offset([COLOR="Red"]i+1[/COLOR], 0) = donemliktalep(i)
şeklinde 6 hücreye yazacaktır.
 
Son düzenleme:
Geri
Üst