Kod yanlış sonuç üretiyor.

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Merhabalar.
A sütünunda A1:A65536 veri ile dolu .
A sütununda son satır ı bulmak için aşağıdaki kodu kullanıyorum ve sonuç U yanlış veriyor sonuc 1 diyor.eğer En son satırı silersem Bu sefer sonuç 65535 olarak doğru veriyor .Acaba nerede 1 hata var.?
Ofice bozulmuş olabilirmi,yoksa windows bozulmuş olabilirmi?
Ofice onarDım yine ayni sonucu verdi.Acaba silip tekrarmı kursam.Yoksa virüsmü bulaştı.
Yanıtınız için şimdiden teşekkür ederim.
:?
Kod:
Sub a()
z = Cells(65536, "A").End(xlUp).Row
MsgBox z
End Sub
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,347
Excel Vers. ve Dili
Office 365 (64 bit) - Türkçe
Aşağıdaki şekilde deneyin.

Kod:
Sub a()
z = WorksheetFunction.CountA([a:a])
MsgBox  z
End Sub
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
anemos' Alıntı:
Aşağıdaki şekilde deneyin.

Kod:
Sub a()
z = WorksheetFunction.CountA([a:a])
MsgBox Cells(z, "A").Value
End Sub
Kod:
z = WorksheetFunction.CountA([a:a])
MsgBox z
End Sub
Merhabalar.
Bu şekilde doğru sonuç veriyor.
Ama ben bu kodu pek kullanmak istemiyorum.
Satırların arasında boşluk olduğu zaman son satır yerini bulmuyor.Bu kod dağa çok doşo satır adedini bulmak için kullanılıyor sanıyorum.
Benim sorduğum ilk sorudaki kod'u sizde bir denermisiniz.
Acaba o kod Bütün sütun dolu ise sonuc'u hatalımı veriyor.
Bütün sütunu veri ile doldurup bir denermisiniz?
:kafa:
 
Katılım
17 Şubat 2006
Mesajlar
981
Excel Vers. ve Dili
M.Office Excel 2003 Tr.
Bütün a sütununu boşaltın veya silin Makroyu çalıştırın. Sonuç 1 veriyor.
Aradığınız 1 herhalde orda :)
Aslında bende çözemedim herhalde Excel'in formasyonu ile ilgili bir olay.
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,347
Excel Vers. ve Dili
Office 365 (64 bit) - Türkçe
Eğer a65536 hücresi dolu ise, doğal olarak arada boşluk olmayınca a1 hücresine dönecektir.
Yazdığınız kod Ctrl + yukarı ok tuşu ile aynı işlevi görüyor.
 

Ayhan Ercan

Özel Üye
Katılım
10 Ağustos 2005
Mesajlar
1,571
Excel Vers. ve Dili
Microsoft 365- Türkçe
birde bunu denermisiniz:

Kod:
Sub deneme()
[a:a].Select
MsgBox Selection.Rows.Count
[a1].Select
End Sub
 

Ayhan Ercan

Özel Üye
Katılım
10 Ağustos 2005
Mesajlar
1,571
Excel Vers. ve Dili
Microsoft 365- Türkçe
hatta seçim yapmadanda yapılabilir:

sub deneme()
msgbox [a:a].rows.count
end sub
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
SchakaL' Alıntı:
hatta seçim yapmadanda yapılabilir:

sub deneme()
msgbox [a:a].rows.count
end sub
Merhabalar.
Sonuç yine hatalı veriliyor.
A sütununda hiç veri olmadığı halde sonuç 65536 veriyor.
Veri olsada ayni sonucu veriyor.
Yoksa Benim windows'ta mı bir sorun var.Yoksa Officede'mi bir sorun var!!
Bir dağa deneyip Bana cevap yazarmısınız.?
:kafa:
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Office'iniz bozuk değil merak etmeyin.

Durum, yukarıda anemos tarafından açıklandığı şekildedir.
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Merhabalar.
Sayın haluk hocam Teşekkür ederim.
Bu kodu kullandığımda 65536'ncı satırı doldurmamam gerekicek kanatındayım.65536'ncı satırı boş bırakıp işlemlerimi öyle yapmam gerekecek.İyi çalışmalar.
 
Üst