VBA COUNTA | Excel VBA'da COUNTA Çalışma Sayfası İşlevi Nasıl Kullanılır?

Excel VBA'da COUNTA Çalışma Sayfası İşlevi

Önceki makalemiz olan “Excel COUNTA” da, değerler aralığından sayısal değerleri saymak için COUNT işlevini nasıl kullanacağımızı görmüştük. Hücre aralığındaki tüm değerleri saymaya ne dersiniz? Evet, bunu da sayabiliriz. Hücre aralığındaki tüm hücre değerlerini saymak için excel VBA'da "COUNTA" formülünü kullanmamız gerekir. Bu makalede, sağlanan aralıktaki tüm hücre değerlerini saymak için VBA'da COUNTA işlevini nasıl kullanacağınızı göstereceğiz.

VBA'da COUNTA İşlevi Örnekleri

Gerçeklerden biri "COUNTA" işlevi bir VBA işlevi değildir. Sorunuzun bir VBA işlevi değilse, onu nasıl kullanacağımız olduğunu biliyorum. VBA işlevi olmasa da endişelenmenize gerek yok, yine de VBA kodlamasında çalışma sayfası işlevi sınıfı altında kullanabiliriz.

Bu VBA COUNTA Excel Şablonunu buradan indirebilirsiniz - VBA COUNTA Excel Şablonu

Tamam, excel VBA COUNTA'yı uygulamak için kodu yazalım.

Adım 1: Bir alt prosedür adı oluşturun.

Adım 2: Şimdi önce VBA COUNTA işlevinin sonucunu nerede saklayacağımıza karar verin. Bu örnekte, sonucu C2 hücresine depolamak istiyorum. Yani kodum Aralık ("C2") olacak. Değer.

Kod:

 Alt Saya_Örnek1 () Aralık ("C2"). Değer = Son Alt 

Adım 3: C2 hücresinde VBA COUNTA işlevinin değerine ihtiyacımız var. Bu nedenle excel VBA COUNTA işlevini uygulamak için önce çalışma sayfası işlev sınıfını uygulamanıza izin verin.

Kod:

 Alt Counta_Example1 () Aralık ("C2"). Değer = İş Sonu Alt 

Adım 4: Çalışma sayfası fonksiyon sınıfını uyguladıktan sonra bir nokta koyarak COUNTA formülünü seçin.

Kod:

 Sub Counta_Example1 () Range ("C2"). Value = WorksheetFunction.Count End Sub 

Adım 5: Şimdi sayılacak hücre aralığını sağlamamız gerekiyor. Bu örnekte, A1'den A11'e kadar olan hücre aralığını saymamız gerekiyor. Bu nedenle hücreleri VBA RANGE nesnesini kullanarak sağlayın.

Kod:

 Alt Saya_Örnek1 () Aralık ("C2"). Değer = Çalışma SayfasıFonksiyonu.CountA (Aralık ("A1: A11")) Son Alt 

Tamam, C2 hücresindeki sonucu almak için kodu çalıştıralım.

Böylece, aynı sonuç VBA COUNTA tarafından da döndürüldü.

Bunun gibi, sağlanan aralıktaki boş olmayan veya boş olmayan hücreleri saymak için COUNTA kullanabiliriz.

Değişkenlerle Kodlama

VBA değişkenleri, bir proje oluşturmanın anahtarıdır. Şimdi aynı veriler için VBA değişkenlerini tanımlayıp sonuca ulaşabiliriz.

Bir örnek için aşağıdaki koda bakın.

Kod:

 Sub Counta_Example2 () Dim CountaRange Aralık Olarak Dim CountaResultCell'i Aralık Olarak Ayarla CountaRange = Aralık ("A1: A11") Set CountaResultCell = Aralık ("C2") CountaResultCell = WorksheetFunction.CountA (CountaRange) End Sub 

Şimdi yukarıdaki kodu açıklayalım.

İlk olarak "CountaRange" değişkenini, değerlerin aralığına başvurmak için bir aralık olarak tanımladım.

 Dim CountaRange As Range

Daha sonra referansı Aralık A1 ila A11 olarak ayarladım.

 CountaRange = Aralık ("A1: A11") ayarla

İkinci değişken, COUNTA sonuç hücresine başvurmaktır.

 Dim CountaResultCell As Range

Bu değişken için hücreyi C2 olarak ayarladım.

 CountaResultCell = Aralık ("C2") olarak ayarlayın

Şimdi, her zamanki gibi, kodlanmış aralıklar yerine değişkenler kullanarak COUNTA işlevini uyguladım. Şimdi eski koda ve bu VBA koduna bakın.

Kod 1:

Kod 2:

Kod 1'de Aralık C2 var, Kod 2'de "CountaResultCell" değişken adımız var. Burada "CountaResultCell" değişkeni referansı C2 hücresi olarak ayarlar. Yani bu değişken artık C2 hücresidir.

Kod 1'de COUNTA işlev aralığı A1 ila A11, kod 2'de "CountaRange" olarak adlandırılan değişkendir. Bu değişken, A1 ila A11 aralığına bir referans tutar.

Eski kod ile değişkenli kod arasındaki fark budur.

Dolayısıyla, COUNTA işlevi, sahip olduğu verilere bakılmaksızın sağlanan aralıktaki tüm boş olmayan hücreleri saymamıza yardımcı olur.