İçindekiler
Bu VBA Mod bir fonksiyon değildir, oysa MOD Excel çalışma sayfasındaki bir işlevdir. VBA Mod iki sayıyı bölen ve iki sayının değerini döndüren bir işleçtir. kalan Operatör Mod 'nin kısa bir biçimidir. MODULO matematik işlemlerinde kullanılan Mod operatörler yuvarlak ve kayan nokta .
Bu makalede, size Excel'i kullanmanın çeşitli örneklerini göstereceğim VBA Mod Operatör.
Pratik Yapmak İçin İndirin
VBA Mod Operatörü Örnekleri.xlsmVBA Mod İşlevinin Temelleri: Özet & Sözdizimi
Özet
Bu VBA Mod işleci iki sayıyı böler ve kalan olarak bilinen bir yerde bölen bir diğeri de sayı . Bu Mod operatörü sayı tarafından bölen .
Sözdizimi
Sayı1 Mod Sayı2 (Bölen)
Argümanlar
Argümanlar | Gerekli / İsteğe bağlı | Açıklama |
---|---|---|
Numara1 | Gerekli | Bu bir sayısal ifade |
Numara2 | Gerekli | Bu bir sayısal ifade |
Dönüş Değeri
Bu VBA Mod işleci bir kalan .
Versiyon
Bu VBA Mod operatörü Excel 2000 ve sonrası için kullanılabilir.
Excel kullanıyorum Microsoft 365 bu örnekleri uygulamak için.
9 Excel'de VBA Mod Fonksiyonunu Kullanma Örnekleri
1. Kalanı Almak için VBA Modunu Kullanma
Eğer isterseniz, bir kalan kullanarak VBA Mod Operatör.
Size prosedürü açıklayayım,
Başlangıç olarak Geliştirici tab>> seçin Visual Basic .
➤ Şimdi, yeni bir pencere Uygulamalar için Microsoft Visual Basic görünecek.
Sonra, şuradan Ekleme >> seçin Modül
Şimdi, aşağıdaki kodu Modül .
Sub Get_Reminder() Dim n As Integer n = 29 Mod 3 MsgBox " 29 Mod 3 is " & n End Sub
İşte, burada Get_Reminder alt prosedüründe, değişkeni bildirdim n olarak Tamsayı 'nin döndürülen değerini tutmak için kullandık. Mod Operatör.
Sonra da MsgBox göstermek için kalan .
Şimdi, Kaydet kodu girin ve çalışma sayfasına geri dönün.
Tekrar açın Geliştirici tab>> dan Ekleme >> seçin Düğme itibaren Form Kontrolleri
Şimdi, Sürükle ve Düğme Başlığı vermek istediğiniz yere yerleştirmek için.
Ardından, düğmeye bir ad verebilirsiniz.
Adını ben koydum Hatırlatma Alın .
⏩ Şimdi, fareye sağ tıklayın bir bağlam menüsü Atama Makro görünecek.
Oradan seçin Makro Atama .
⏩ A iletişim kutusu . Makro Ata görünecek.
Ardından, şu öğeyi seçin Makro adı ve Makrolar içinde .
Seçtim Get_Reminder bir şey yok. Makro adı ve seçilmiş VBA Mod.xlsm gelen Makrolar içinde .
Son olarak, tıklayın TAMAM. .
Ardından, aşağıdaki düğmeye tıklayın Get_Reminder .
Bu nedenle, bir msg kutusu ile kalan .
Bunu her şey için yapabilirsin sayılar almak için kalan .
Daha fazlasını okuyun: Excel'de VBA Format Fonksiyonu (Örneklerle 8 Kullanım)
2. Kalanı Almak için VBA Modunda Hücre Referansını Kullanma
Kullanarak Hücre Referansı Excel sayfasından, aşağıdaki bilgileri alabilirsiniz kalan gelen VBA Mod .
Açmak için VBA düzenleyicisi için bölüm 1'de açıklanan adımları izleyin.
Ardından, aşağıdaki kodu Modül .
Sub Reminder_Using_CellReference() Dim n As Integer n = Range("B4").Value Mod Range("C4").Value MsgBox Range("B4").Value & " Mod " & Range("C4").Value & " is " & n End Sub
Burada, içinde Reminder_Using_CellReference değişkenini bildirdim n olarak Tamsayı 'nin döndürülen değerini tutmak için kullandık. Mod Operatör.
Ardından, hücre referansını kullanın B4 olarak sayı1 ve C4 olarak number2 (bölen)
Sonra da MsgBox göstermek için kalan .
Şimdi, Kaydet kodu girin ve çalışma sayfasına geri dönün.
Takmak için Düğme bölüm 1'de açıklanan adımları izleyin.
Düğmenin adını ben koydum Hücre Referansı .
Bundan sonra, aşağıdaki Düğme çalıştırmak için VBA Kod.
Bu nedenle, şunları alacaksınız kalan kullanılan hücre referansı için.
İlgili İçerik: VBA İşlevinde Değer Döndürme (Hem Dizi Hem de Dizi Olmayan Değerler)
3. Negatif Bir Sayıdan Kalan Almak için VBA Modunu Kullanma
Bu VBA Mod ayrıca destekler negatif sayılar hesaplanırken kalan .
Açmak için VBA düzenleyicisi için bölüm 1'de açıklanan adımları izleyin.
Ardından, aşağıdaki kodu Modül .
Sub Reminder_From_NegativeNumber() Dim n As Integer n = Range("B5").Value Mod Range("C5").Value MsgBox Range("B5").Value & " Mod " & Range("C5").Value & " is " & n End Sub
Burada, içinde Hatırlatma_NegatifNumaradan, Değişken bildirdim n olarak Tamsayı 'nin döndürülen değerini tutmak için kullandık. Mod Operatör.
Ardından, hücre referansını kullanın B5 olarak numara1 ve C5 olarak number2 (bölen)
Sonra da MsgBox göstermek için kalan .
Şimdi, Kaydet kodu girin ve çalışma sayfasına geri dönün.
Takmak için Düğme, bölüm 1'de açıklanan adımları izleyin.
Düğmenin adını ben koydum Negatif Sayıdan Hatırlatma .
Bundan sonra, aşağıdaki Düğme çalıştırmak için VBA Kod.
Bu nedenle, şunları alacaksınız kalan için negatif sayı .
Daha fazlasını okuyun: VBA IsNumeric Fonksiyonu Nasıl Kullanılır (9 Örnek)
4. Hücrede Kalanı Almak için VBA Modunu Kullanma
Göstermek yerine kalan aracılığıyla msg kutu kullanarak bir hücreye yerleştirebilirsiniz. VBA MOD fonksiyon.
Açmak için VBA düzenleyicisi için bölüm 1'de açıklanan adımları izleyin.
Ardından, aşağıdaki kodu Modül .
Sub Reminder_in_Cell() ActiveCell.FormulaR1C1 = "=MOD(RC[-2],RC[-1])" Range("D4").Select End Sub
Burada, içinde s ub-prosedür Reminder_in_Cell kullandım. ActiveCell.FormulaR1C1 konumunu almak için format ActiveCell .
Daha sonra MOD fonksiyonunu almak için kalan .
Ayrıca, kullanılan Seçiniz yöntem.
Şimdi, Kaydet kodu girin ve çalışma sayfasına geri dönün.
Takmak için Düğme ve atamak ve VBA kodu bölüm 1'de açıklanan adımları izleyin.
Düğmenin adını ben koydum Hücrede Hatırlatma .
Ardından, şu öğeyi seçin D4 Hücre.
Daha sonra Düğme çalıştırmak için VBA Kod.
Sonuç olarak, şunları elde edeceksiniz kalan seçili hücrede.
Aynı işlemi takip ederek, aşağıdaki sonuçları elde edersiniz kalan geri kalan sayılar için.
Daha fazlasını okuyun: Excel VBA'da MsgBox Fonksiyonu Nasıl Kullanılır (Tam Bir Kılavuz)
5. Tamsayı Bölen & Kayan Sayı ile VBA Mod Kullanımı
Bu durumda bölen bir tamsayı yazın, ancak sayı içinde şamandıra türünü kullandıktan sonra VBA Mod Operatör.
Açmak için VBA düzenleyicisi için bölüm 1'de açıklanan adımları izleyin.
Ardından, aşağıdaki kodu Modül .
Sub Reminder_From_Decimal_Number() Dim n As Integer n = Range("B5").Value Mod Range("C5").Value MsgBox Range("B5").Value & " Mod " & Range("C5").Value & " is " & n End Sub
Burada, R eminder_From_Decimal_Number alt prosedürü, Değişken bildirdim n olarak Tamsayı 'nin döndürülen değerini tutmak için kullandık. Mod Operatör.
Ardından, hücre referansını kullanın B5 olarak sayı1 ve C5 olarak number2 (bölen)
Sonra da MsgBox göstermek için kalan .
Şimdi, Kaydet kodu girin ve çalışma sayfasına geri dönün.
Takmak için Düğme bölüm 1'de açıklanan adımları izleyin.
Düğmenin adını ben koydum Ondalık Sayıdan Hatırlatma .
Bundan sonra, aşağıdaki Düğme çalıştırmak için VBA Kod.
Bu nedenle, aşağıdakileri alacaksınız kalan için ondalık sayı .
Ancak bir sorun var ki VBA yuvarlıyor ve ondalık . Burada, sonucun şöyle olması gerekiyordu 2.25 ama VBA Mod yuvarlayarak 2 .
Unutmayın, eğer herhangi bir ondalık/değişken noktasından daha büyüktür 0.5 içinde VBA Mod o zaman olacak yuvarlandı bir sonraki tamsayı değerine.
Eğer daha az ise 0.5 içinde VBA Mod , o zaman olacak yuvarlandı mevcut tamsayı değerine ekler.
Daha fazlasını okuyun: Excel'de VBA Int Fonksiyonu Nasıl Kullanılır (3 Örnek)
Benzer Okumalar:
- Excel VBA'da IsNull Fonksiyonu Nasıl Kullanılır (5 Örnek)
- Excel'de VBA Str İşlevini Kullanma (4 Örnek)
- VBA Switch Fonksiyonu Nasıl Kullanılır (6 Uygun Örnek)
- Excel'de VBA Len İşlevini Kullanma (4 Örnek)
- Excel Sayfasındaki Yinelemeler Nasıl Kaldırılır (7 Yöntem)
6. Bölen & Sayının İkisi de Ondalık Olduğunda VBA Mod Kullanımı
Eğer senin bölen ve sayı ikisi de ondalık/float türünü kullanıyorsanız, o zaman VBA Mod Operatör.
Açmak için VBA düzenleyicisi için bölüm 1'de açıklanan adımları izleyin.
Ardından, aşağıdaki kodu Modül .
Sub Decimal_Both_Divisor_Number() Dim n As Integer n = Range("B5").Value Mod Range("C5").Value MsgBox Range("B5").Value & " Mod " & Range("C5").Value & " is " & n End Sub
İşte, burada alt prosedürü Decimal_Both_Divisor_Number, Değişken bildirdim n olarak Tamsayı 'nin döndürülen değerini tutmak için kullandık. Mod Operatör.
Ardından, hücre referansını kullanın B5 olarak numara1 ve C5 olarak number2 (bölen)
Sonra da MsgBox göstermek için kalan .
Şimdi, Kaydet kodu girin ve çalışma sayfasına geri dönün.
Takmak için Düğme, bölüm 1'de açıklanan adımları izleyin.
Düğmenin adını ben koydum Almak Bölen & Ondalık Sayı Olduğunda Hatırlatma .
Bundan sonra, aşağıdaki Düğme çalıştırmak için VBA Kod.
Bu nedenle, şunları alacaksınız kalan her ikisi için de ondalık bölen ve sayılar .
Ancak bir sorun var ki VBA yuvarlar ondalık . Burada, sonucun şöyle olması gerekiyordu 1.75 ama VBA Mod yuvarlayarak 2 .
İlgili İçerik: Excel'de VBA EXP Fonksiyonu (5 Örnek)
7. 0,5'ten Büyük Ondalık Sayıyı Yuvarlamak için VBA Modu
Burada, size nasıl yuvarlak içinde çalışır VBA Mod .
Size göstermek için ondalık nokta problemi, ilk önce hesaplayacağım kalan Excel kullanarak MOD fonksiyon.
Hücre içinde D4 aşağıdaki formülü yazın,
=MOD(B6, C6)
Burada, ben kullandım B6 olarak C6 numarası olarak bölen .
Ardından, tuşuna basın GİRİŞ almak için kalan ve sen alacaksın kalan hangi olacak 7.7 .
Şimdi, şu şekilde hesaplayalım VBA Mod 'yi açmak için VBA editör bölüm 1'de açıklanan adımları takip edin.
Ardından, aşağıdaki kodu Modül .
Sub RoundsUp_Number() Dim n As Integer n = Range("B6").Value Mod Range("C6").Value MsgBox Range("B6").Value & " Mod " & Range("C6").Value & " is " & n End Sub
İşte, burada alt prosedürü Decimal_Both_Divisor_Number, Değişken bildirdim n olarak Tamsayı 'nin döndürülen değerini tutmak için kullandık. Mod Operatör.
Ardından, hücre referansını kullanın B6 olarak numara1 ve C6 olarak number2 (bölen)
Sonra da MsgBox göstermek için kalan .
Şimdi, Kaydet kodu girin ve çalışma sayfasına geri dönün.
Takmak için Düğme bölüm 1'de açıklanan adımları izleyin.
Düğmenin adını ben koydum RoundsUp Ondalık Sayı .
Bundan sonra, aşağıdaki Düğme çalıştırmak için VBA Kod.
Bu nedenle, aşağıdakileri alacaksınız kalan kullanılan hücre referansı için.
Dikkatlice bakın kalan o VBA Mod geri döndü. MOD işlevinin döndürdüğü aynı değerler için 7.7 ama VBA Mod operatörü geri döndü 0 . olarak VBA değerleri yuvarladı.
Daha fazlasını okuyun: Excel'de VBA Yuvarlak Fonksiyonu Nasıl Kullanılır (6 Hızlı Kullanım)
8. Çift veya Tek Sayıyı Belirleme
Bu VBA Mod aynı zamanda Hatta veya Tuhaf belirli bir aralıktaki sayı.
Açmak için VBA düzenleyicisi için bölüm 1'de açıklanan adımları izleyin.
Ardından, aşağıdaki kodu Modül .
Sub Determine_Even_Or_Odd() Dim n As Integer For n = Range("B4").Value To Range("B8").Value If n Mod 2 = 0 Then MsgBox n & " is an even number!" Else MsgBox n & " is an odd number!" End If Next n End Sub
İşte, burada alt prosedür Determine_Even_Or_Odd, Değişken bildirdim n olarak Tamsayı .
Sonra, bir İçin hücre referansı aracılığıyla bildirdiğim değeri tuttuğum döngü.
Daha sonra, bir EĞER olarak ayarladığım fonksiyon n Mod 2 = 0 eğer değer true ise o zaman bir Hatta aksi takdirde ifade Tuhaf .
Sonra da MsgBox göstermek için ifadeler .
Şimdi, Kaydet kodu girin ve çalışma sayfasına geri dönün.
Takmak için Düğme bölüm 1'de açıklanan adımları izleyin.
Düğmenin adını ben koydum Çift veya Tek .
Bundan sonra, aşağıdaki Düğme çalıştırmak için VBA Kod.
Bu nedenle, hangi değerin Hatta ve hangisi Tuhaf .
İşte, 1 bu Tuhaf Numara.
İşte, 2 bu Hatta Numara.
Daha fazlasını okuyun: Excel'de VBA If - Then - Else Deyimi (4 Örnek)
9. Kalanı Almak için VBA Modunda Hücre Aralığını Kullanma
Aynı zamanda hücre aralığı almak için kalan kullanarak VBA Mod .
Açmak için VBA düzenleyicisi için bölüm 1'de açıklanan adımları izleyin.
Ardından, aşağıdaki kodu Modül .
Sub Get_Reminder_UsingVBA() Dim n As Integer For n = 4 To 9 MsgBox Cells(n, 2).Value Mod Cells(n, 3) Next n End Sub
İşte, burada Get_Reminder_UsingVBA alt prosedürü, Değişken bildirdim n olarak Tamsayı .
Sonra, bir İçin Hücre referansı aracılığıyla bildirdiğim değeri tuttuğum döngü. Döngü, satırlardan gelen değerler için çalışacaktır 4 için 9 .
Sonra da MsgBox göstermek için kalan .
Şimdi, Kaydet kodu girin ve çalışma sayfasına geri dönün.
Takmak için Düğme bölüm 1'de açıklanan adımları izleyin.
Düğmenin adını ben koydum Dinamik Hücre Referansı .
Bundan sonra, aşağıdaki Düğme çalıştırmak için VBA Kod.
Bu nedenle, şunları alacaksınız kalan tüm kullanılan değerler için tek tek.
Bunlardan ilki sayı 29 nerede bölen o 3 .
İkincisi ise sayı -47 nerede bölen o 5 .
Döngü, satıra ulaşana kadar çalışacaktır 9 . Beşincisi ise sayı 59 nerede bölen o 6 .
İlgili İçerik: Excel'de VBA Randomize Fonksiyonu Nasıl Kullanılır (5 Örnek)
Excel MOD & VBA Mod Arasındaki Fark
Çoğu durumda dönüş değerleri aynı olsa da MOD fonksiyonu ve VBA Mod Ancak bazı durumlarda sonuç birbirinden farklıdır. Size aralarındaki farkı göstereyim.
MOD Fonksiyon | VBA Mod Operatör |
---|---|
Bu MOD fonksiyonu hem Tamsayı ve Ondalık Sayılar. | Mod operatörü yalnızca Tamsayı Sayılar. |
Kullanırken negatif içinde sayı MOD döndürmez negatif işaret . | Bu destekler negatif sayılarını döndürür ve ardından negatif işaret . |
Hatırlanması Gerekenler
🔺 Operatör yuvarlayacak ondalık/değişken Puan.
Uygulama Bölümü
Bu açıklanan örnekleri uygulamak için çalışma kitabında bir alıştırma sayfası sağladım.
Sonuç
Bu makalede, Excel'in 9 örneğini gösterdim VBA Mod operatörünü kullanırken hatırlamanız gereken şeylerin yanı sıra sık sık hata gösterme nedenlerini de ele almaya çalıştım. Her türlü sorunuz ve öneriniz için aşağıya yorum yapmaktan çekinmeyin.