EXCEL VBA'DA AKTİF HÜCRE

 

Excel VBA'da ActiveCell nedir?

Excel VBA'da etkin hücre, bir çalışma sayfasının şu anda seçili hücresini veya hücre aralığını ifade eder. Şu anda vurgulanan veya odakta olan hücredir ve VBA'da gerçekleştirilen herhangi bir eylem veya işlem genellikle onu etkiler.

VBA etkin hücre değeri ActiveCell nesnesi kullanılarak düzenlenebilir veya başvurulabilir. Bu nesne, seçili hücreyle etkileşim kurmak için özellikler ve yöntemler sağlar. Örneğin, etkin hücrenin değerini alabilir veya ayarlayabilir, biçimlendirebilir veya içeriğine göre hesaplamalar yapabilirsiniz. VBA etkin hücre adresinin “A1” olduğu bir örneği ele alalım. Burada değeri “Örnek Dize”dir. Değerini yazdırmak için aşağıdaki kodu kullanarak Excel VBA'da bulunan ActiveCell işlevini kullanırız.

VBA Active Cell Giriş - Örnek dize
VBA Aktif Hücre Girişi - Kod

İmlecimiz “A1” hücresine tıklandığı için, ActiveCell.Value fonksiyonu kullanılarak referans alınır. Immediate sekmesindeki “A1” hücre değerini çıktı olarak yazdıracaktır.

VBA Aktif Hücre Girişi - Çıktı

Benzer şekilde, ActiveCell aşağıda gösterildiği gibi seçme değerini gerçekleştirmek için kullanılabilir. Daha önce belirtildiği gibi, hücre "A1"de bulunan daha önceki kullanılabilir değeri üzerine yazacaktır. Dolayısıyla şimdi hücre A1'deki değer aşağıda görüldüğü gibidir:

VBA Aktif Hücre Girişi - Activecell

VBA Aktif Hücre Girişi - Dünya

Excel VBA'da referanslama

Excel VBA'da referanslama, hücreler, aralıklar, çalışma sayfaları ve çalışma kitapları gibi bir Excel çalışma kitabındaki çeşitli öğelere erişmenizi ve bunları düzenlemenizi sağlar. Bu öğelere referans vererek, bunlar üzerinde işlemler gerçekleştirebilir, değerlerini alabilir, özelliklerini değiştirebilir veya hesaplamalar uygulayabilirsiniz.

Excel VBA'da öğelere başvurmanın birden fazla yolu vardır.

1 – Hücre Referansı

Satırlarını ve sütunlarını belirterek belirli bir VBA etkin hücre adresine başvurmak mümkündür.

Aşağıda gösterilen ActiveCell Değerini göz önünde bulundurun:

VBA Aktif Hücre - Hücre Referansı

VBA etkin hücre değerine adresini çağırarak da başvurabiliriz. Örneğin, her iki yol da aşağıda gösterilmiştir:

VBA Aktif Hücre - adres

Excel VBA'da Cells() kullanarak ActiveCell “A1” değerini aşağıdaki gibi değiştirebiliriz:

VBA Aktif Hücre - Referanslama

Kod:

Sub CellRef()
'adres
Debug.Print Range(“A1”).Value
'satırlar ve sütunlar üzerinden başvuruda bulunma
Cells(1, 1).Value = 10
Debug.Print ActiveCell.Value
End Sub

Çıktıda bu değerler yazdırılacaktır.

VBA Aktif Hücre - Hücre Referansı - Çıktı

Ayrıca “A1” hücresindeki değer 10 olarak değişecektir.

VBA Aktif Hücre - Hücre Referansı - A1

2 – Aralık (Range) Referansı

VBA Excel'de belirli bir hücre aralığında etkin hücre seçimi yapmak mümkündür .

Adres çağrısı ile:

VBA Aktif Hücre - Aralık Referansı - Adres çağrısı

A1-A5 hücrelerine gösterildiği gibi 10 yazdırılacaktır.

VBA Aktif Hücre - Aralık Referansı - Adres çağrısı - Çıktı

Hücreler fonksiyonunu kullanarak satır ve sütun çağrıları:

VBA Aktif Hücre - Aralık Referansı - satırlar ve sütunlar

C1-C3 hücrelerine 20 yazdırılacaktır:

VBA Aktif Hücre - Aralık Referansı - satırlar ve Sütunlar - Çıktı

Kod:

Sub RangeRef()
'adres çağrısı
Range(“A1:A5”).Value = 10
'satırlar ve sütunlar tarafından çağrı
Range(Cells(1, 3), Cells(3, 3)).Value = 20
End Sub

3 – Çalışma Sayfası Referansı

Hücrelere bir çalışma sayfasındaki çalışma sayfası adları veya dizinleri ve hücre adresleri ile başvurulabilir.

“A1” hücresinin şu değere sahip olduğunu düşünelim:

VBA Aktif Hücre - Çalışma Sayfası Referansı

Çalışma sayfası ve hücre adresi belirtilerek değerlere başvurulabilir.

VBA Active Cell - Çalışma Sayfası Referansı - isim çağrısı

Veya çalışma sayfasının indeksini çağırarak.

VBA Aktif Hücre - Çalışma Sayfası Referansı - Dizin çağrısı.jpg

Her iki durumda da “A1” hücresinin çıktısı Hemen sekmesinde yazdırılacaktır.

VBA Aktif Hücre - Çalışma Sayfası Referansı - Çıktı

Kod:

Sub WorksheetRef()
'ad çağrısı
Debug.Print Worksheets(“Sheet1”).Range(“A1”).Value
'indeks çağrısı
Debug.Print Worksheets(1).Range(“A1”).Value
End Sub

4 – Çalışma Kitabı Referansı

VBA Active Cell değeri, şu anda üzerinde çalıştığımız çalışma kitabını gösterildiği gibi çağırarak referans alınabilir. Çalışma kitabımızın adının Excel Format olduğunu varsayalım.

“A1” hücresinin şu değere sahip olduğunu düşünelim:

VBA Aktif Hücre - Çalışma Kitabı Referansı

Bu değere, önce Çalışma Kitabı adına, sonra çalışma sayfası adına ve ardından adrese başvurularak başvurulabilir.

VBA Active Cell - Çalışma Kitabı Referansı - isim çağrısı

Çalışma kitabı ayrıca Excel Çalışma Kitabının dosya dizin yolu kullanılarak da açılabilir ve başvurulabilir:

VBA Active Cell - Çalışma Kitabı Referansı - dizin çağrısı.jpg

Çıktıyı yazdıracak olan:

VBA Active Cell - Çalışma Kitabı Referansı - Çıktı

Not: Excel dosyasının yolunu, sisteminizde bulunan Excel dosya yoluna göre değiştirin.

Kod:

Sub WorkbookRef()
'name çağrısı
Debug.Print Workbooks(“ExcelFormat.xlsm”).Worksheets(“Sheet1”).Range(“A1”).Value
'dizin çağrısı
Debug.Print Workbooks.Open(“C:\Users\Ananth\Downloads\ExcelFormat.xlsm”).Worksheets(1).Range(“A1”).Value
End Sub

Etkin Hücre Adresi, Değer, Satır ve Sütun Numarası

Excel VBA'da etkin hücrenin adresine, hücre değerine, satır numarasına ve sütun numarasına erişmek için ActiveCell nesnesinin özelliklerini kullanabilirsiniz. Hücre değerini göz önünde bulundurun:

Örnek

Aşağıda daha önce bahsedilen değerleri yazdırmanın yolları gösterilmektedir.

  • VBA AKTİF HÜCRE ADRESİ:

Bu, aşağıda gösterildiği gibi ActiveCell'de bulunan VBA Adres özelliğini kullanarak yapılabilir:

Adres Ref
  • VBA AKTİF HÜCRE DEĞERİ:

Aşağıda gösterildiği gibi Aktif Hücre değerinin yazdırılmasıyla gerçekleştirilebilir:

Değer Ref
  • VBA AKTİF HÜCRE SATIRI:

ActiveCell'deki Satır niteliğini kullanarak, etkin hücrenin Satır numarası aşağıdaki gibi yazdırılabilir:

Sıra
  • VBA AKTİF HÜCRE SÜTUN NUMARASI:

ActiveCell'de bulunan Column niteliğini çağırarak sütun numarası aşağıdaki gibi yazdırılır:

Sütun Numarası

Aşağıda görüldüğü gibi, dördünün de çıktısı Hemen sekmesinde yazdırılacaktır:

VBA Aktif Hücre - Hücre Adresi Örneği - Çıktı

Kod:

Sub ValueRef()
'adres ref
Debug.Print “Etkin Hücre Adresi: ” & ActiveCell.Address
'değer ref
Debug.Print “Etkin Hücre Değeri: ” & ActiveCell.Value
'satır ref
Debug.Print “Etkin Hücre Satırı: ” & ActiveCell.Row
'sütun numarası ref
Debug.Print “Etkin Hücre Sütunu: ” & ActiveCell.Column
End Sub

Excel VBA'da Etkin Hücrenin Parametreleri

Excel VBA'da, ActiveCell nesnesi, etkin hücrenin çeşitli yönlerine erişmenize ve bunları düzenlemenize olanak tanıyan çeşitli özellikler sağlar. Aşağıdaki örneği ele alalım.

Aşağıda gösterildiği gibi, Aktif Hücre “A1”de bir fonksiyon tanımlanmıştır. Değer şu anda 75'tir.

Parametreler

Etkin Hücre'ye başvurulabilecek birkaç parametre vardır:

  • Adres: ActiveCell, etkin bir hücrenin adresini aşağıdaki gibi döndürebilir:
Parametreler - Adres
  • Değer: ActiveCell belirtilen etkin hücrenin değerini döndürür:
Parametreler - Değer
  • Satır: ActiveCell, şu anda etkin olan hücrenin satır numarasını yazdırabilir:
Parametreler - Satır
  • Sütun: ActiveCell, VBA etkin hücresinin sütun numarasının değerini döndürür:
Parametreler - Sütun Numarası
  • Formül: ActiveCell, etkin hücrede kullanılan Excel formülünü yazdırabilir. Kullanılmış bir formül yoksa, yalnızca değeri yazdırır:
Parametreler-Formül.jpg
  • Yazı Tipi: ActiveCell, yazı tipi boyutunu, yazı tipi rengini değiştirerek yazı tiplerini özelleştirebilir; örneğin:
Parametreler - Yazı Tipi

Burada değeri kalın yaptık ve yazı tipi boyutunu 12 olarak değiştirdik ve ayrıca yazı tipi rengini VBA RGB (0,0,255) kullanarak mavi olarak değiştirdik.

Kod:

Sub ParamRef()
'adres ref
Debug.Print “Etkin Hücre Adresi: ” & ActiveCell.Address
'değer ref
Debug.Print “Etkin Hücre Değeri: ” & ActiveCell.Value
'satır ref
Debug.Print “Etkin Hücre Satırı: ” & ActiveCell.Row
'sütun numarası ref
Debug.Print “Etkin Hücre Sütunu: ” & ActiveCell.Column
'formül ref
Debug.Print “Etkin Hücre Formülü: ” & ActiveCell.Formula
'FONT
ActiveCell.Font.Bold = True
ActiveCell.Font.Size = 12
ActiveCell.Font.Color = RGB(0, 0, 255)
End Sub

Çıktı şu şekilde olacaktır:

Parametreler - Çıktı

Yorum Gönder

DT KARİYER KPSS Dünyasına Hoş Geldiniz
Sevgili dostum nasıl yardımcı olabilirim?
Bu alana yazınız...