VBA Tam Sayı Veri Türü | Tam Sayı Veri Türünü VBA'da kullanmak için Tam Kılavuz

Bir tamsayı, VBA'da tam sayı değerlerini tutmak için herhangi bir değişkene verilen bir veri türüdür, bir tamsayı değişkeninin tutabileceği sınırlamalar veya parantez VBA'da diğer dillerinkine benzerdir, herhangi bir değişken tamsayı olarak tanımlanır değişken, VBA'daki DIM deyimini veya anahtar sözcüğünü kullanarak.

Excel VBA Tamsayı

Veri türleri, herhangi bir kodlama dilinde çok önemlidir çünkü tüm değişken açıklamasını, bu değişkenlere atanan veri türü takip etmelidir. Çalışmamız gereken çeşitli veri türlerimiz var ve her veri türünün kendisiyle ilişkili kendi avantajları ve dezavantajları var. Değişkenleri bildirirken, belirli veri türleriyle ilgili ayrıntıları bilmek önemlidir. Bu, VBA'daki "Tamsayı" veri türüne adanmış makaledir. Size "Tamsayı" veri türünün tam resmini göstereceğiz.

Tamsayı Veri Türü nedir?

Tam sayılar, pozitif, negatif ve sıfır olabilen ancak kesirli sayı olmayan tam sayılardır. VBA bağlamında, "Tamsayı" değişkenlere atadığımız bir veri türüdür. Tam sayıları ondalık konumlar olmadan tutabilen sayısal bir veri türüdür. Tamsayı veri türü VBA LONG veri türünün yarısı olan, yani 4 bayt olan 2 bayt depolama.

Excel VBA Tamsayı Veri Türü Örnekleri

Aşağıda VBA Tamsayı Veri türü örnekleri verilmiştir.

Bu VBA Tam Sayı Veri Türü Şablonunu buradan indirebilirsiniz - VBA Tam Sayı Veri Türü Şablonu

Örnek 1

Bir değişkeni tanımladığımızda, ona bir veri türü atamak ve gereksinimlere göre tüm kullanıcılar tarafından yaygın olarak kullanılan birini tamsayı yapmak gerekir.

Dediğim gibi tamsayı sadece tam sayıları tutabilir, kesirli sayıları değil. VBA tamsayı veri türü örneğini görmek için aşağıdaki adımları izleyin.

Adım 1: Değişkeni Tamsayı olarak bildirin.

Kod:

 Sub Integer_Example () Dim k As Integer End Sub 

Adım 2: 500 değerini "k" değişkenine atayın.

Kod:

 Sub Integer_Example1 () Dim k As Integer k = 500 End Sub 

Adım 3: VBA mesaj kutusunda değeri gösterin.

Kod:

 Sub Integer_Example1 () Dim k As Integer k = 500 MsgBox k End Sub 

Kodu F5 tuşunu kullanarak veya manuel olarak çalıştırdığımızda, mesaj kutusunda 500 görebiliriz.

Örnek 2

Şimdi değeri "k" değişkenine -500 olarak atayacağım.

Kod:

 Sub Integer_Example2 () Dim k As Integer k = -500 MsgBox k End Sub 

Bu kodu manuel olarak çalıştırın veya F5'e basın, ardından mesaj kutusunda -500 değerini de gösterecektir.

Örnek 3

Söylediğim gibi VBA Integer veri türü 25.655 veya 47.145 gibi kesir sayılarını değil yalnızca tam sayıları tutabilir.

Bununla birlikte, kesir numarasını bir VBA Tamsayı veri türüne atamaya çalışacağım. Bir örnek için aşağıdaki koda bakın.

Kod:

 Sub Integer_Example3 () Dim k As Integer k = 85.456 MsgBox k End Sub 

"K" değişkenine 85.456 atadım. Sonucun ne olduğunu görmek için bu VBA kodunu çalıştıracağım.

  • Kesir sayısının değerini atamama rağmen sonucu 85 olarak döndürdü. Bunun nedeni, VBA'nın kesir sayılarını en yakın tam sayıya yuvarlamasıdır.
  • 0,5'ten küçük olan tüm kesir sayıları en yakın tam sayıya yuvarlanacaktır. Örnek olarak 2.456 = 2, 45.475 = 45.
  • 0,5'ten büyük olan tüm kesir sayıları en yakın tam sayıya yuvarlanacaktır. Örnek olarak 10.56 = 11, 14.789 = 15.

Yuvarlama tamsayısına bir kez daha bakmak, "k" değerini 85.58'e getirir.

Kod:

 Sub Integer_Example3 () Dim k As Integer k = 85.58 MsgBox k End Sub 

Bu kodu F5 tuşunu kullanarak veya manuel olarak çalıştırdığımda 86 döndürecektir çünkü 0,5'ten fazla olan herhangi bir şey bir sonraki tam sayıya yuvarlanacaktır.

Excel VBA'da Tamsayı Veri Türü Sınırlamaları

Taşma Hatası: Tamsayı veri türü, atanan değer -32768 ile 32767 arasında olduğu sürece düzgün çalışmalıdır. Her iki taraftaki sınırı aştığı anda bir hataya neden olur.

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

Kod:

 Sub Integer_Example4 () Dim k As Integer k = 40000 MsgBox k End Sub 

40000 değerini "k" değişkenine atadım.

Tamsayı Veri Türü hakkında tam bilgiye sahip olduğumdan, çalışmadığını bildiğimden eminim çünkü tamsayı veri türü, değeri 32767'den fazla tutamaz.

Kodu manuel olarak veya F5 tuşu ile çalıştıralım ve ne olacağını görelim.

Hata !!!

Hatayı "Taşma" olarak aldım çünkü Tamsayı veri türü pozitif sayılar için 32767'den ve negatif sayılar için -32768'den fazlasını tutamaz.

Tür Uyuşmazlığı Hatası: Tamsayı verileri yalnızca -32768 ile 32767 arasındaki sayısal değerleri tutabilir. Bu sayılardan daha fazla atanan herhangi bir sayı Taşma hatası gösterecektir.

Şimdi ona metin veya dize değerleri atamaya çalışacağım. Aşağıdaki örnek kodda değeri "Merhaba" olarak belirledim.

Kod:

 Sub Integer_Example4 () Dim k As Integer k = "Merhaba" MsgBox k End Sub 

Bu kodu çalıştırma seçeneği aracılığıyla veya manuel olarak çalıştıracağım ve ne olacağını göreceğim.

Hatayı "Tür uyuşmazlığı" olarak gösteriyor çünkü "tamsayı veri türü" değişkenine bir metin değeri atayamıyoruz.