Çarpma İşleminin Üç Alternatifi - Microsoft Excel


Excel VBA ile çarpma işlemi yapmak için kullanılabilecek 3 alternatif aşağıda verilmiştir.

Kod


Option Explicit

Sub CarpmaIslemiAlternatifleri()
    Dim sayi1, sayi2 As Double
    Dim dizi1, dizi2 As Variant
    
    sayi1 = 3
    sayi2 = 5
    
    'Yöntem 1
    Range("A1") = sayi1 * sayi2
    
    'Yöntem 2
    Range("A2") = WorksheetFunction.Product(sayi1, sayi2)
    
    'Yöntem 3
    dizi1 = Array(3)
    dizi2 = Array(5)
    
    Range("A3") = WorksheetFunction.SumProduct(dizi1, dizi2)
End Sub

Kod (Açıklamalı)


Option Explicit

Sub carpmaIslemiAlternatifleri()
    Dim sayi1, sayi2 As Double
    Dim dizi1, dizi2, dizi3 As Variant
    
    sayi1 = 3
    sayi2 = 5
    
    '--------------------------------------------------
    'Yöntem 1
    'Çarpma işaretini kullanarak çarpma yaptık.
    '--------------------------------------------------
    Range("A1") = sayi1 * sayi2
    
    '--------------------------------------------------
    'Yöntem 2
    'WorksheetFunction'un Product formülünden
    'yararlanarak çarpma yaptık.
    '--------------------------------------------------
    Range("A2") = WorksheetFunction.Product(sayi1, sayi2)
    
    '--------------------------------------------------
    'Yöntem 3
    'Biraz gereksiz bir yöntem ama belki işe yarayan
    'bir durum olur. Bu SumProduct (TOPLA.ÇARPIM)
    'verilen eşit boyutlu 2 ya da daha fazla dizide
    'sırasıyla her dizinin n. sıradaki elemanını
    'alıp çarpar. Sonra bu çarpım sonuçlarını da
    'alıp toplar. Biz de bir nevi bunu çarpma işlemi
    'için özelleştirdik.
    'Örnek
    'dizi1 = Array(3, 2, 4)
    'dizi2 = Array(3, 2, 4)
    'dizi3 = Array(3, 2, 4)
    '-----------------------
    '             27, 8, 64 (toplam 99)
    '
    '--------------------------------------------------
    dizi1 = Array(3)
    dizi2 = Array(5)

    Range("A3") = WorksheetFunction.SumProduct(dizi1, dizi2)
End Sub

Etiketler
microsoft excel açıklamalı içerik microsoft excel vba