Cara menghitung rata-rata tertimbang di vba (dengan contoh)


Anda dapat menggunakan sintaks dasar berikut untuk menghitung rata-rata tertimbang menggunakan VBA:

 Sub FindWeightedAverage()

Range(" E2 ") = _
    WorksheetFunction.SumProduct(Range(" B2:B7 "), Range(" C2:C7 ")) / _
    WorksheetFunction.Sum(Range(" C2:C7 "))

End Sub

Contoh khusus ini menghitung rata-rata tertimbang menggunakan sel dalam rentang B2:B7 sebagai nilai dan sel dalam rentang C2:C7 sebagai bobot.

Rata-rata tertimbang kemudian ditampilkan di sel E2 .

Contoh berikut menunjukkan cara menggunakan sintaksis ini dalam praktiknya.

Contoh: Hitung Rata-Rata Tertimbang Menggunakan VBA

Katakanlah kita memiliki kumpulan data berikut di Excel yang memperlihatkan berbagai penjualan yang dilakukan oleh karyawan sebuah perusahaan:

Misalkan kita ingin menghitung rata-rata tertimbang harga, dengan menggunakan nilai pada kolom Jumlah sebagai nilai dan nilai pada kolom Harga sebagai bobot:

Kita dapat membuat makro berikut untuk melakukan ini:

 Sub FindWeightedAverage()

Range(" E2 ") = _
    WorksheetFunction.SumProduct(Range(" B2:B7 "), Range(" C2:C7 ")) / _
    WorksheetFunction.Sum(Range(" C2:C7 "))

End Sub

Saat kami menjalankan makro ini, kami menerima keluaran berikut:

Perhatikan bahwa sel E2 berisi nilai 9.705882 .

Kami dapat memverifikasi kebenarannya dengan menghitung rata-rata tertimbang secara manual.

Ingatlah bahwa kami menggunakan rumus berikut untuk rata-rata tertimbang:

Rata-rata tertimbang = Σw i X i / Σw i

Emas:

  • w i = nilai bobot
  • X i = nilai data

Kita dapat memasukkan nilai dari kumpulan data kita ke dalam rumus ini untuk menghitung harga rata-rata tertimbang:

  • Rata-rata tertimbang = Σw i X i / Σw i
  • Rata-rata tertimbang = (1*8 + 3*5 + 2*6 + 2*7 + 5*12 + 4*14) / (1+3+2+2+5+4)
  • Nilai rata-rata siswa A = 9,705882

Ini cocok dengan nilai yang kami hitung menggunakan makro.

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di VBA:

VBA: Cara menulis fungsi AVERAGEIF dan AVERAGEIFS
VBA: Cara menulis fungsi SUMIF dan SUMIFS
VBA: Cara menulis fungsi COUNTIF dan COUNTIFS

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *