Çözüldü Aktif hücrenin bir önceki satır ve sütun numarasını alma

Katılım
21 Mart 2006
Mesajlar
234
Excel Vers. ve Dili
Excel 2003 - İngilizce
Merhaba;
Aşağıdaki kodda aktif hücrenin bir sütun gerisinin değerini almak istiyorum. Ancak hata alıyorum. Görünüşte mantık hatası görmüyorum. Bu sorunu nasıl çözebiliriz.
Teşekkürler

Sub Planlama()

Dim Kod As Integer
Dim adet As Integer

x = ActiveCell.Row
y = ActiveCell.Column

Kod = Cells(x, y)
adet = Cells(x , y - 1) // Burada hata alıyorum
MsgBox (Kod )
MsgBox (adet )

End Sub
 

dEdE

Destek Ekibi
Destek Ekibi
Katılım
1 Temmuz 2005
Mesajlar
2,605
Excel Vers. ve Dili
Ofis 2013 TR 64 Bit
Merhaba,
Aktif hücreniz A kolonunda ise hata verir. Aşağıdaki kodu dener misiniz?
Kod:
Sub Planlama()
Dim Kod As Integer
Dim adet As Integer
    x = ActiveCell.Row
    y = ActiveCell.Column
   
    Kod = Cells(x, y)

    If y = 1 Then
        MsgBox "A sütunundasınız, Bir önceki sütun yok"
        Exit Sub
    End If
   
    adet = Cells(x, y - 1)  '// Burada hata alıyorum
    MsgBox (Kod)
    MsgBox (adet)
End Sub
 
Katılım
21 Mart 2006
Mesajlar
234
Excel Vers. ve Dili
Excel 2003 - İngilizce
Merhaba
Aktif hücre 2.satırın 10.sütununda. Sanırım böyle bir sorun teşkil etmeyecektir.
 

dEdE

Destek Ekibi
Destek Ekibi
Katılım
1 Temmuz 2005
Mesajlar
2,605
Excel Vers. ve Dili
Ofis 2013 TR 64 Bit
Merhaba
Aktif hücre 2.satırın 10.sütununda. Sanırım böyle bir sorun teşkil etmeyecektir.
Ben denedim sorun teşkil etmedi. :)
Sorun // Burada hata alıyorum ifadesini başında tek tırnak olamaması olabilir mi?
Bunun dışında sizin kodunuzda sorun yok. Ben sadece ilk kolon ("A" sütunu) için kontrol kodu ve // Burada hata alıyorum ifadesinin başına tek tırnak ekledim.
 
Son düzenleme:

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,248
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba,

@dEdE'nin belirttiği hatanın dışında ek olarak aşağıdaki sorun olabilir.

Aktif hücrenin bir sütun gerisinde bulunan hücrede METİNSEL ifade varsa en başta yaptığınız Dim ile başlayan satırı revize etmeniz gerekir. Veri tipi belli değilse Variant olarak tanımlayabilirsiniz.
 
Katılım
21 Mart 2006
Mesajlar
234
Excel Vers. ve Dili
Excel 2003 - İngilizce
Merhaba;
Değerli vaktinizi aldığım için kusura bakmayın. Sayın @dEdE'nin kodda sorun yok demesiyle ve Sayın Korhan Ayhan veri tipi sorununa işaret edince sorunu çözdüm. Ben aynı zamanda c# ile program yazdığım için c#'taki veri tipi olan int ile VBA daki integerin aynı değer aralıklarını kapsadığını düşündüm. Hücredeki 115.200 rakamı İntegerin vari aralığını aşması sebebiyle bu hatayı alıyormuşum. :)
Tekrar kusura bakmayın. Emeğiniz için teşekkür ederim.
 
Üst