Vba'da mod operatörü nasıl kullanılır (örneklerle)


Bir bölümün kalanını hesaplamak için VBA’da Mod operatörünü kullanabilirsiniz.

Bu operatörü pratikte kullanmanın iki yaygın yolu aşağıda verilmiştir.

Yöntem 1: Mod Operatörünü Sabit Kodlanmış Değerlerle Kullanma

 SubUseMod ()
Range(" A1 ") = 20 Mod 6
End Sub

Bu özel örnek, A1 hücresinde 20’nin 6’ya bölünmesiyle elde edilen sayıyı döndürecektir.

Yöntem 2: Mod operatörünü hücre başvurularıyla kullanma

 SubUseMod ()
Range(" C2 ") = Range(" A2 ") Mod Range(" B2 ")
End Sub

Bu özel örnek, A2 hücresindeki değerin geri kalanını B2 hücresindeki değere bölerek hesaplayacak ve sonucu C2 hücresinde görüntüleyecektir.

Aşağıdaki örnekler her yöntemin pratikte nasıl kullanılacağını göstermektedir.

Örnek 1: Mod Operatörünü Sabit Kodlanmış Değerlerle Kullanma

20’nin kalanını 6’ya bölmek ve sonucu A1 hücresinde görüntülemek istediğimizi varsayalım.

Bunun için aşağıdaki makroyu oluşturabiliriz:

 SubUseMod ()
Range(" A1 ") = 20 Mod 6
End Sub

Bu makroyu çalıştırdığımızda aşağıdaki çıktıyı alıyoruz:

20 tur Mod 6’nın sonucu 2’dir .

Bu değer makroda belirttiğimiz gibi A1 hücresinde görüntülenir.

Not : “6” değeri üç kez “20” girer ve kalanı 2 olur. 20 Mod 6 bu şekilde hesaplanır.

Örnek 2: Mod Operatörünü Hücre Referanslarıyla Kullanmak

A2 hücresindeki değerin geri kalanını B2 hücresindeki değere bölerek hesaplamak ve sonucu C2 hücresinde görüntülemek istediğimizi varsayalım.

Bunun için aşağıdaki makroyu oluşturabiliriz:

 SubUseMod ()
Range(" C2 ") = Range(" A2 ") Mod Range(" B2 ")
End Sub

Bu makroyu çalıştırdığımızda aşağıdaki çıktıyı alıyoruz:

20 tur Mod 6’nın sonucu 2’dir .

Bu değer makroda belirttiğimiz gibi C2 hücresinde görüntülenir.

Not : VBA Mod operatörü belgelerinin tamamını burada bulabilirsiniz.

Ek kaynaklar

Aşağıdaki eğitimlerde VBA’da diğer ortak görevlerin nasıl gerçekleştirileceği açıklanmaktadır:

VBA: Bir aralıktaki değerler nasıl eklenir?
VBA: Aralığın ortalama değeri nasıl hesaplanır
VBA: Aralıktaki satır sayısı nasıl sayılır?

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir