Formulde hangi mantık hatası var?

Katılım
28 Şubat 2007
Mesajlar
251
Excel Vers. ve Dili
visual basic
Arkadaşlar selam,

Private Sub CommandButton1_Click()
ProgressBar1.Visible = True
Dim x As Integer
For x = 2 To Cells.CurrentRegion.Rows.Count
For Y = 1 To Cells(x - 1, 256).End(1).Column
If Cells(x, Y) = "" Then Cells(x, Y) = Cells(x - 1, Y)
ProgressBar1.Value = (x / (Cells.CurrentRegion.Rows.Count)) * ((Cells.CurrentRegion.Rows.Count) / 100) * (10000 / (Cells.CurrentRegion.Rows.Count))
Label1.Caption = Format(Int((x / (Cells.CurrentRegion.Rows.Count)) * ((Cells.CurrentRegion.Rows.Count) / 100) * (10000 / (Cells.CurrentRegion.Rows.Count))), "%0")
DoEvents
Next: Next
MsgBox "SUCCESSFULLY FINISHED!!!"
[A1].Select
ProgressBar1.Visible = False
Unload Me
End Sub


yukarıdaki formulün ne yaptığını anlamışsınızdır.

Boş olan hücreyi bulup bir üstteki hücrenin değerini atıyor. çok güzel bir formul tüm isteğimi karşılıyor.

Ancak gelelim asıl mevzuya:)

Bu formulde bir mantık hatası var ki 20000-30000 satırlarda işlem başarıyla gerçekleşirken elimde 50000 satırlık ve 10 kolonluk bir veri vardı ve bunda debug veriyor. debug da For x = 2 To Cells.CurrentRegion.Rows.Count

burada veriyor sebebi ne olabilir arkadaşalr uzman arkadaşlardan yardım istiyorum.

Teşekkür ederim.
 
Katılım
28 Şubat 2007
Mesajlar
251
Excel Vers. ve Dili
visual basic
Arkadaşlar yok mu hiç fikri olan bu kodda bir hata yok mu yoksa biz mi göremiyoruz.

Niye hata veriyor acaba?
 
Katılım
5 Ekim 2006
Mesajlar
1
Excel Vers. ve Dili
2003 -tr
Dim x As Integer bunu yerine

Dim x As long
Dim y As long

tanımla
 
Katılım
28 Şubat 2007
Mesajlar
251
Excel Vers. ve Dili
visual basic
Çok saol dostum evet onu nasıl düşünemedim:)

şimdi sorun vermiyor ancak performans açısından sorun çıkarcakmı onu deniyorum.

Sence çıkarır mı?

Kolay gelsin.
 
Üst